🥳 TODAY IS MY BIRTHDAY 🥳
오늘 실시간 강의에서 튜터님이 잠깐 이야기 해주신 내용이 궁금해서 직접 찾아보았다.
백신 접종 예약 사이트가 먹통이 됐던 이야기를 해주셨다. 그때를 되돌아보면 사이트가 먹통이었지만 그냥 단순히 '사람이 많이 몰려서겠지' 라고만 생각했었다.
코로나19 백신 접종 온라인 사전예약 서비스를 개시하자마자 1000만명에 달하는 인원이 한꺼번에 몰리면서 예약사이트는 ‘먹통’ 상태에 빠졌다. 처리 가능한 수준보다 30배 이상 많은 접속자가 몰리자 예약사이트는 마비됐고, 정부는 2시간가량 예약을 중단했다. 앞서 같은 달 12일과 14일 55~59세 대상 사전예약을 개시·재개할 당시에도 각각 1시간가량 접속 지연 현상이 발생했다. 정부는 시스템 오류를 막기 위해 연령을 세분화해 분산 예약하도록 하고 시스템 안정화 작업까지 마쳤음에도 접속 오류 문제를 해결하지 못했다.
...
LG CNS는 이튿날 백신 예약 과정을 살핀 후 데이터베이스 최적화 작업을 시작했다. 김 상무는 “책에서 특정 단어를 찾는다면 앞면부터 뒤지는 것보다 인덱스를 보고 찾는 것이 빠르지 않나. 기존의 백신 예약 시스템은 그 인덱스가 있긴 한데 그다지 효율적이지 못했다”며 “우리는 시스템에서 원하는 데이터를 빨리 찾을 수 있도록 그 인덱스들을 추가하는 작업을 했다”고 설명했다. 이로 인해 서버에 걸린 부하가 98% 이상 줄었다.
...
데이터 병목 현상도 개선했다. 용량이 큰 데이터가 매번 서버와 사용자 사이를 오가느라 병목 현상이 심해졌다고 판단해 이 파일들을 네이버 클라우드로 옮겼다. 박 팀장은 “사용자는 서버에서 백신 예약 관련 데이터만 가져오고, 이미지와 폰트 등 덩어리가 큰 파일은 네이버 클라우드에서 따로 가져오니 병목 현상이 80% 정도 경감됐다”고 설명했다. 이러한 작업에 더해 서버도 10대에서 15대로 50% 증설했다. 지난달 28일까지 6일 만에 개선 작업이 완료됐다.
해당 기사: https://m.khan.co.kr/people/people-general/article/202108232124055#c2b
변하지 않는 컨텐츠들(정적 컨텐츠)은 CDN을 사용하면 효율적이다!
AWS로 예를 들면 AWS S3에 정적 컨텐츠를 넣고 CloudFront를 사용해 접근하는 것이다.
CloudFront는 엣지 로케이션이라고 하는 데이터 센터의 전 세계 네트워크를 통해 콘텐츠를 제공한다. CloudFront를 통해 서비스하는 콘텐츠를 사용자가 요청하면 지연 시간이 가장 낮은 엣지 로케이션으로 요청이 라우팅되므로 가능한 최고의 성능으로 콘텐츠가 제공된다.
즉 CDN의 장점은
즉, 백신 접종 예약 사이트에 트래픽이 몰려 과부화되는 상황을 개선하기 위해 네이버 클라우드 플랫폼의 CDN 서비스를 이용했다. CDN을 사용함으로써 정적 컨텐츠에 대한 트래픽을 분산시켰다는 것을 알 수 있다.
전세계적인 서비스가 아니더라도 CDN을 이용했을 때 이점이 있다는 것을 알 수 있었다.