서비스의 트래픽이 증가함에 따라 낮은 트래픽에 여유롭던 서버도 더 이상 클라이언트의 요청을 버티지 못할 수 있다.
증가한 요청에 따라 서버를 더 확장시켜 해결할 수 있고, 다음 두 가지의 방법이 가능하다.
서버의 하드웨어 성능을 업그레이드 하는 방법이다. (수직적 확장)
CPU의 코어 수를 증가시키거나, RAM을 추가하는 방법 등으로 서버의 성능을 업그레이드 한다.
다음과 같은 장, 단점을 가진다.
장점
단점
비슷한 성능의 서버를 여러대 증설하는 방법이다. (수평적 확장)
서버가 여러대로 나뉘기 때문에 앞단에서 각 서버에 트래픽을 균등하게 나눠주는 로드 밸런싱 기술이 필요하다.
장점
단점
스케일 아웃의 경우 로드 밸런서가 필요하다.
여러대의 서버가 존재하니, 각 서버에 트래픽을 알맞게 나눠줘야하기 때문이다.
로드 밸런싱은 3가지 종류가 존재한다.
L2
L3
L4
L7
그렇다면 로드 밸런서는 어떠한 기준으로 어떤 서버에 요청을 전달할지 정할 수 있을까?
Round Robin
Least Connections
Source
로드 밸런서에 장애가 발생하는 경우는 어떻게 해결할까?
Active / Passive