대규모 서비스를 지탱하는 기술

couque·2022년 2월 7일
0

대규모 서비스의 문제나 어려움

확장성 확보, 부하분산 필요

스케일업

  • 하드웨어의 성능을 높여 처리 능력을 끌어올리는 법 스케일업

스케일아웃

  • 저가의 하드웨어를 횡으로 나열하여 확장성 확보 스케일아웃
  • 서버가 하나일 때 고려하지 않았던 점들을 고려해야 한다.
  • 사용자로부터의 요청 분배 필요 -> 로드밸런서 사용
  • 서로 다른 DB의 데이터 동기화
  • 네트워크 통신의 지연시간 고려

다중성 확보

  • 특정 서버가 고장나거나 성능이 저하되어도 서비스를 지속할 수 있어야 함!

효율적 운용 필요

  • 서버 대수가 늘어날 수록, 각 서버의 상태를 파악하기 힘듦. 따라서 많은 일손을 거치지 않고 효율적으로 개발하고자 해야 함

개발자 수, 개발 방법의 변화

  • 역할 분담 -> 개발 표준화는 어떻게?
  • 작업하는 사람이 늘어날 때 생산성도 증가해야 함

대규모 데이터량에 대한 대처

  • 어떻게 하면 데이터를 줄일 수 있을까?
  • 여러 서버로 분산시킬 수 있을까?
  • 필요한 데이터를 최소한의 횟수로 읽어들일까... 의 과제

여태 대규모 서비스를 경험해보지 못했는데, 몇백만 건의 데이터가 담긴 DB를 다루게 되어 해당 책을 읽기 시작했다.

0개의 댓글