[ toss tech ] 서버 증설 없이 처리하는 대규모 트래픽
·
개발
이 글은 toss tech에 게시된 [ 서버 증설 없이 처리하는 대규모 트래픽 ]를 읽고 작성한 글입니다.(https://toss.tech/article/monitoring-traffic) 급격하게 성장하는 서비스가 겪는 문제 토스는 사용자가 상품을 구매하면 포인트를 적립받을 수 있고, 광고주가 빠르게 상품 물량을 소진시킬 수 있게 해주는 "라이브 쇼핑 보기" 서비스를 제공한다.라이브 쇼핑 보기 서비스를 론칭하는 날, 예상했던 것보다 굉장히 많은 사용자가 유입되었으며, 그 후에도 매일 신규 사용자가 늘었다고 한다. 결과적으로, 라이브 쇼핑 보기 서비스는 피크 시간대 동시 접속자 수는 분당 수십만 명, 포인트 지급 요청 API 요청은 초당 수십만 건이 오는 서비스로 성장하였다.이렇게 급격하게 늘어난 트래픽..
대규모 트래픽에 대처하는 방법
·
개발
서비스가 성장함에 따라 사용자 수는 급격하게 증가할 수 있다.이런 상황에서 단일 서버 및 단일 데이터베이스만 사용하는 단순한 구조를 유지한다면, 서버의 응답 속도가 느려지고 과부하가 발생할 확률이 높으며 장애가 발생했을 때 전체 서비스가 중단되어 버린다.어떻게 하면 대규모 트래픽에 대처할 수 있을까? 최적화 코드 최적화 : 비효율적인 코드 제거DB 최적화 : 인덱스, 쿼리 재구성 등을 통한 처리 속도 증진가장 기본적으로 해야 할 조치는 성능을 최적화하는 것이다.비효율적인 처리는 서버 부하를 높일 수 있다.따라서, 코드 또는 쿼리를 최적화하여 처리 속도를 증가해야 한다! Scale-up Scale-up (수직적 확장) : 더 좋은 성능의 서버를 사용하는 것 수직적 확장을 통해 요청 처리를 더 빠르게 수행할..