대규모 서비스의 문제나 어려움
확장성 확보, 부하분산 필요
스케일업
- 하드웨어의 성능을 높여 처리 능력을 끌어올리는 법
스케일업
스케일아웃
- 저가의 하드웨어를 횡으로 나열하여 확장성 확보
스케일아웃
- 서버가 하나일 때 고려하지 않았던 점들을 고려해야 한다.
- 사용자로부터의 요청 분배 필요 ->
로드밸런서
사용
- 서로 다른 DB의 데이터 동기화
- 네트워크 통신의 지연시간 고려
다중성 확보
- 특정 서버가 고장나거나 성능이 저하되어도 서비스를 지속할 수 있어야 함!
효율적 운용 필요
- 서버 대수가 늘어날 수록, 각 서버의 상태를 파악하기 힘듦. 따라서 많은 일손을 거치지 않고 효율적으로 개발하고자 해야 함
개발자 수, 개발 방법의 변화
- 역할 분담 -> 개발 표준화는 어떻게?
- 작업하는 사람이 늘어날 때 생산성도 증가해야 함
대규모 데이터량에 대한 대처
- 어떻게 하면 데이터를 줄일 수 있을까?
- 여러 서버로 분산시킬 수 있을까?
- 필요한 데이터를 최소한의 횟수로 읽어들일까... 의 과제
여태 대규모 서비스를 경험해보지 못했는데, 몇백만 건의 데이터가 담긴 DB를 다루게 되어 해당 책을 읽기 시작했다.