레이어 7 로드 밸런싱이란?

로드 밸런싱은 네트워킹을 위한 개방형 시스템 간 상호 연결(OSI) 참조 모델의 다양한 레이어에서 수행할 수 있습니다. 여기에서는 모델의 서로 다른 두 레이어에서 두 가지 로드 밸런싱 옵션에 대한 개요를 제공합니다.

레이어 4와 레이어 7 로드 밸런싱의 차이점

레이어 4 로드 밸런싱은 메시지 콘텐츠와 관계없이 메시지 전송을 처리하는 중간 전송 레이어에서 작동합니다. TCP(Transmission Control Protocol)는 인터넷에서 Hypertext Transfer Protocol(HTTP) 트래픽을 위한 레이어 4 프로토콜입니다. 레이어 4 로드 밸런서는 패킷의 콘텐츠를 검사하지 않고 단순히 업스트림 서버와 네트워크 패킷을 주고 받습니다. TCP 스트림의 처음 몇 패킷을 검사하여 제한된 라우팅 결정을 내릴 수도 있습니다.

레이어 7 로드 밸런싱은 각 메시지의 실제 콘텐츠를 처리하는 상위 애플리케이션 레이어에서 작동합니다. HTTP는 인터넷에서 웹사이트 트래픽을 위한 주요 레이어 7 프로토콜입니다. 레이어 7 로드 밸런서는 레이어 4 로드 밸런서보다 더 정교한 방식으로 네트워크 트래픽을 라우팅하며, 특히 HTTP 같은 TCP 기반 트래픽에 적용됩니다. 레이어 7 로드 밸런서는 네트워크 트래픽을 종료하고 내부 메시지를 읽습니다. 그런 다음, 메시지 콘텐츠(예: URL 또는 쿠키)에 따라 로드 밸런싱 결정을 내릴 수 있으며, 선택한 업스트림 서버에 새 TCP 연결을 만들거나 HTTP keepalive를 통해 기존 서버를 재사용하고 요청 내용을 서버에 기록합니다.

레이어 7 로드 밸런싱의 이점

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

레이어 7 로드 밸런싱을 수행하는 디바이스를 흔히 역방향 프록시 서버라고 합니다.

레이어 7 로드 밸런싱의 예

간단한 예를 살펴보겠습니다. 사용자가 트래픽이 많은 웹사이트를 방문합니다. 사용자 세션 동안 이미지 또는 동영상과 같은 정적 콘텐츠, 뉴스 피드와 같은 동적 콘텐츠, 심지어 주문 상태와 같은 거래 정보까지 요청할 수 있습니다. 레이어 7 로드 밸런싱을 통해 로드 밸런서는 요청 자체의 정보(요청되는 콘텐츠 종류 등)에 따라 요청을 라우팅할 수 있습니다. 따라서 이제는 이미지 또는 동영상에 대한 요청을 저장하고 멀티미디어 콘텐츠를 제공하도록 고도로 최적화된 서버로 이미지 또는 동영상을 라우팅할 수 있습니다. 할인된 가격과 같은 거래 정보에 대한 요청은 가격 관리를 담당하는 애플리케이션 서버로 라우팅될 수 있습니다. 레이어 7 로드 밸런싱을 사용하면 네트워크 및 애플리케이션 설계자가 안정적이고 효율적으로 확장되어 수요를 충족하는 고도로 조정되고 최적화된 서버 인프라 또는 애플리케이션 딜리버리 네트워크를 구축할 수 있습니다.

NGINX의 지원 방법

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

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

서버 팜의 전면에 로드 밸런서로 NGINX Plus를 삽입하면 전체 웹사이트의 효율성, 성능, 신뢰성 및 확장성이 향상됩니다. NGINX Plus는 고객 만족도와 IT 투자 수익을 모두 극대화할 수 있도록 도와줍니다.