2012-05-09 2 views
2

로드 밸런싱을 적용하는 레이어 7 또는 레이어 4의 차이점을 이해하지 못합니다. 그 중 하나가 더 좋습니까? 내 시스템에 더 적합한 것을 어떻게 결정할 수 있습니까? 사전에레이어 7 또는 레이어 4로로드 밸런싱

감사합니다 ...

답변

6
나는 이것이 매우 강력한 토론 할 수있을 것 같아요

어쨌든 그것은 프로그래밍 관련 아니에요하지만 ...

그들 사이의 차이는 여기서 (이 OSI 층) 당신이 균형을 이루십시오. 제 생각에는 결코은 레이어 7에서만 균형을 유지해야합니다 (그러면 레이어 4를 항상 사용해야합니다).

왜? 당신이 그것을 위해 특별한 하드웨어를 필요로하지 않기 때문에 계층 7로드 밸런싱, 그것은, 응용 프로그램 수준에서 이루어집니다 좋은 그러나 당신은 많은 다른 많은 단점과 함께이 지불 :

  • 공연은 그렇게 잘되지 않습니다 :로드 밸런서가있을 것이다 쿠키 및 세션을 추적하십시오 (필요한 경우).이 경우 더 강력한 하드웨어가 필요합니다. 올바른 방법은 응용 프로그램이이를 올바르게 관리하도록하는 것입니다. 이것을 무시하려면보다 강력한 하드웨어가 필요합니다.
  • 로드가 서버에 분산되어 있지만 이 참이되도록로드 균형을 유지하는 것은 쉽지 않습니다. 매우 자주 DNS 서버에 주입되는 것입니다. 서버가 얼마나 사용 중인지에 대한 정확한 지식이 없습니다 (하나의 집중적 인 작업과 두 개의 경량 작업이 두 대의 서버로 보내지는 경우 라운드 로빈은 하나의 집중적 인 작업과 하나의 작업을 할당 할 수 있음을 상상하십시오) 동일한 서버에 대해 경량 일 수 있습니다. 일 경우 동일한 서버에 경량 서버를 할당 할 수 있습니다.
  • 그들은 확장 성이 없습니다 (응용 프로그램이 관리해야하는 것을 관리해야합니다). 많은 자원을 낭비 할 것입니다.

왜 좋은가요? 확장 성이 뛰어난 응용 프로그램을 패치하기 위해 빠르고 쉽고 더러운 솔루션이 될 수 있습니다 (ASP.NET 응용 프로그램 자체의 확장이 가능한 4 계층 균형 조정). 그것들은 해결책이 아닌 일시적인 문제에 대한 일시적인 해결책이 될 수 있습니다. 실제 환경에서는 레이어 4로드 밸런싱이 선호됩니다 (예를 들어, 레이어 7 밸런싱과 혼합되는 경우가 있습니다. 예를 들어, Google은 1 단계 라운드 로빈 dns로드 밸런싱을 사용합니다).

부하 분산에 대한이 아주 좋은 기사 읽기 : (계층 7로드 밸런싱의 장점에 대해) 내가 재미 발견 http://1wt.eu/articles/2006_lb/index.html

뭔가, here을 그들이 말하는 : 사용 사례는 여전히 매우 제한되어

동안 , 레이어 7로드 밸런싱 기능은 향후 사용을 위해 많은 가능성을 열어줍니다. 이 기술이 발전함에 따라 더 많은 트래픽 유형을보다 지능적으로 균형있게 조정할 수있게 될 것입니다. (이러한 장점의) 사용 사례 인 경우

" 여전히 상당히 제한"우리는 그때 NOW 어떤 부하를 기반으로 할 이유가 표시되지 않습니다 "이 기술로 이 발전"고 기다릴 필요가 레이어 7에서만 균형 잡힌 솔루션을 제공합니다 (또한 향후 언제든지 추가하기가 쉽습니다).

3

계층 4로드 밸런서는 네트워크 및 전송 계층 프로토콜 (IP, TCP, FTP, UDP)에있는 데이터에 따라 작동합니다.

레이어 7로드 밸런서는 HTTP와 같은 응용 프로그램 계층 프로토콜에서 찾은 데이터를 기반으로 요청을 배포합니다. http 헤더, 쿠키 또는 http와 같은 특정 매개 변수 내의 데이터와 같은 특정 데이터를 기반으로 요청을 배포 할 수도 있습니다.

그래서 레이어 4로드 밸런서는 TCP로드 밸런서이지만 레이어 7로드 밸런서는 http로드 밸런서입니다.