CloudFront (Devlog 10일차)

EenSung Kim·2021년 7월 28일
0


CloudFront

Amazon CloudFront is a web service that speeds up distribution of your static and dynamic web content, such as .html, .css, .js, and image files, to your users.
- AWS CloudFront 에 대한 소개 중에서

AWS 가 제공하는 여러 서비스 중 하나인 CloudFront 는 공룡 기업인 Amazon 이 가진 세계 곳곳의 데이터 센터를 활용해 우리가 제공하려는 웹서비스를 사용자에게 전달해주는 서비스입니다. 여러 곳의 데이터센터로 미리 데이터를 분산시켜 대응하기 때문에 어디에서 접근 요청을 하더라도 최적의 상황으로 서비스를 제공할 수 있게 되죠.

만약 우리가 제공하려는 서비스가 전 세계의 유저를 타겟으로 할 수 있는 서비스라면 CloudFront 는 분명 좋은 대안이 될 수 있을 것 같습니다. 스타벅스가 어디에서나 비슷한 경험을 제공하며 엄청난 성장을 이뤄낸 것처럼 세계 어디에서나 비슷한 유저 경험을 할 수 있다는 것은 분명 좋은 일이니까요.

문제는 CloudFront 가 정확하게 무엇을 위한 것인지 잘 이해하지 못한 채로, 블로그를 따라서 정적 웹페이지를 호스팅했다는 겁니다. 어제의 블로깅에서 언급한대로 https 를 긴급하게 적용해야 했기 때문이죠.

https 는 해결이 되었는데 다른 문제가 발생했습니다. 아예 도메인 접속이 불가한 경우부터 접속이 잘 되는 경우, 접속은 되는데 예전 버전으로 접속이 되는 경우 등등 4 명의 팀원에게 각각 다른 문제가 나타나는 문제였습니다.

처음에는 어디에서 이런 문제가 발생했는지조차 몰랐다가 겨우 CloudFront 로 범위를 좁힐 수 있었지만, 여전히 문제의 해결이 쉽지는 않네요. 검색어를 잘 입력하지 못한 탓인지 관련한 자료도 찾기가 어려웠습니다. (유독 AWS 관련 자료를 찾아보기가 쉽지 않은 것 같기도 합니다.)


배포(deploy) 에 걸리는 시간은?

CloudFront 에서 웹페이지를 배포하게 되면 엣지 로케이션(Edge Location)이라고 부르는 각지의 데이터센터로 자료가 퍼지기까지 대략 25분 내외가 걸린다고 합니다.참고자료

하지만 공식 자료의 내용은 아닌 터라 정말 그런 것인지 확인하기가 쉽지 않습니다. 게다가 배포한지 한참 지났는데도 왜 배포가 제대로 반영이 되지 않는지 도무지 알 수가 없네요.

관련해서 더 자세한 자료를 찾아봐도 딱히 맞는 자료를 아직 찾지는 못했습니다. 게다가 최소한 내일 오전까지는 작업을 마치고 발표 준비를 해야하는 터라, 만약 적절한 방법을 찾지 못한다면 CloudFront 를 사용하지 않는 방법으로 배포를 준비해야 할 것 같습니다.

(찾은 블로그 자료)


테스트 케이스의 중요성

TDD 는 Test Driven Development 의 약자인데요. 우리가 개발한 결과물이 어때야 할지에 관한 테스트 코드를 먼저 만든 후에, output 을 만들어 둔 테스트 코드에 맞춰가며 개발하는 방식이라고 합니다.

결과물에 대한 완벽한 정의가 있을 수록 개발 과정이 한층 더 쉬워지는 것을 first project 를 통해 알 수 있었습니다. 기획 과정에 공을 들여야 한다는 말이 이제 와서야 와닿는 것 같네요.

물론 그렇다고 first 부터 잘 할 수 있었던 것은 당연히 아닙니다. 지금 와서 생각해보면 무엇을 해야 하는지를 아예 몰랐기 때문에 기획 과정에서 어버버 했던 것들이 많았거든요.

도쿄 올림픽에 출전한 한 노장 탁구선수가 "오늘의 나는 내일보다 젊다" 는 말을 해서 화제가 되었는데요. 내일의 나는 그래도 오늘보다 조금 더 성장했을 것이기 때문에, 당장은 아쉬움이 많아도 또 그 아쉬움만큼 성장할 수 있을거라 생각합니다.

profile
iOS 개발자로 전직하기 위해 공부 중입니다.

0개의 댓글