로드 밸런싱은 네트워킹을 위한 개방형 시스템 간 상호 접속(OSI) 참조 모델의 다양한 계층에서 수행할 수 있습니다. 여기에서는 이 모델의 서로 다른 두 계층에서 사용할 수 있는 두 가지 로드 밸런싱 옵션을 간략히 살펴봅니다.

계층 4와 계층 7 부하 분산의 차이점

레이어 4 부하 분산은 중간 계층인 전송 계층에서 작동하며, 메시지 내용과 관계없이 메시지 전달을 처리합니다. 전송 제어 프로토콜(TCP)은 인터넷상의 하이퍼텍스트 전송 프로토콜(HTTP) 트래픽에 사용되는 레이어 4 프로토콜입니다. 레이어 4 로드 밸런서는 패킷 내용을 검사하지 않고 네트워크 패킷을 업스트림 서버로 전달하거나 업스트림 서버에서 받아 전달합니다. TCP 스트림의 처음 몇 개 패킷을 검사하여 제한적인 라우팅 결정을 내릴 수 있습니다.

계층 7 부하 분산은 상위 수준의 애플리케이션 계층에서 작동하며, 각 메시지의 실제 콘텐츠를 처리합니다. HTTP는 인터넷 웹사이트 트래픽에 주로 사용되는 계층 7 프로토콜입니다. 계층 7 부하 분산기는 계층 4 부하 분산기보다 훨씬 정교한 방식으로 네트워크 트래픽을 라우팅하며, 특히 HTTP와 같은 TCP 기반 트래픽에 적합합니다. 계층 7 부하 분산기는 네트워크 트래픽을 종단하고 그 안의 메시지를 읽습니다. 그런 다음 메시지의 콘텐츠(예: URL 또는 쿠키)를 기반으로 부하 분산 결정을 내릴 수 있습니다. 이후 선택한 업스트림 서버에 새 TCP 연결을 설정하거나 HTTP 연결 유지를 통해 기존 연결을 재사용한 다음, 서버에 요청을 전송합니다.

계층 7 부하 분산의 이점

계층 7 부하 분산은 패킷 기반 계층 4 부하 분산보다 CPU를 더 많이 사용하지만, 최신 서버에서 성능 저하를 일으키는 경우는 거의 없습니다. 계층 7 부하 분산을 사용하면 로드 밸런서가 더 지능적으로 부하 분산을 결정하고 콘텐츠에 최적화 및 변경 사항(예: 압축 및 암호화)을 적용할 수 있습니다. 또한 버퍼링을 사용하여 업스트림 서버에서 느린 연결을 오프로드함으로써 성능을 향상합니다.

계층 7 부하 분산을 수행하는 장치는 흔히 리버스 프록시 서버라고 합니다.

계층 7 부하 분산의 예

간단한 예를 살펴보겠습니다. 사용자가 트래픽이 많은 웹사이트를 방문합니다. 세션이 진행되는 동안 사용자는 이미지나 동영상 같은 정적 콘텐츠, 뉴스 피드 같은 동적 콘텐츠, 주문 상태 같은 트랜잭션 정보를 요청할 수 있습니다. 계층 7 로드 밸런싱을 사용하면 로드 밸런서가 요청된 콘텐츠의 종류 등 요청 자체에 포함된 정보를 기반으로 요청을 라우팅할 수 있습니다. 따라서 이미지나 동영상 요청을 해당 콘텐츠를 저장하고 멀티미디어 콘텐츠 제공에 고도로 최적화된 서버로 라우팅할 수 있습니다. 할인 가격 같은 트랜잭션 정보 요청은 가격 관리를 담당하는 애플리케이션 서버로 라우팅할 수 있습니다. 계층 7 로드 밸런싱을 통해 네트워크 및 애플리케이션 아키텍트는 고도로 조정되고 최적화된 서버 인프라 또는 애플리케이션 전송 네트워크를 구축하여 안정성을 확보하는 동시에 수요에 맞춰 효율적으로 확장할 수 있습니다.

NGINX가 제공하는 이점

NGINX Plus와 NGINX는 Dropbox, Netflix, Zynga와 같이 트래픽이 많은 웹사이트에서 사용하는 업계 최고의 부하 분산 솔루션입니다. 전 세계 3억 5천만 개 이상의 웹사이트가 콘텐츠를 빠르고 안정적이며 안전하게 제공하기 위해 NGINX Plus와 NGINX Open Source를 사용하고 있습니다.

소프트웨어 기반 로드 밸런서인 NGINX Plus는 유사한 기능을 갖춘 하드웨어 기반 솔루션보다 훨씬 저렴합니다. NGINX Plus의 포괄적인 로드 밸런싱 기능을 활용하면 고도로 최적화된 애플리케이션 전송 네트워크를 구축할 수 있습니다.

서버 팜 앞단에 NGINX Plus를 로드 밸런서로 배치하면 전체 웹사이트의 효율성, 성능, 안정성 및 확장성이 향상됩니다. NGINX Plus는 고객 만족도와 IT 투자 수익을 모두 극대화할 수 있도록 지원합니다.