2010-04-22 4 views
6

웹 서버에서로드 균형 조정을위한 더 나은 방법은 무엇입니까? 내 서비스는 .NET 및 Mono에서 실행되므로 IIS 또는 Apache2에서 호스팅 될 수 있으며 SSL 연결을 제공해야합니다.로드 균형 조정 및 세션

저는 두 가지 주요 접근법을 읽었습니다. 공용 서버에 상태를 저장하고 고정 세션을 사용합니다. 다른 방법이 있습니까?

나는 끈적 끈적한 세션에 대한 3 diffent 일을 읽은

: 어떤 서버와는 연결 및 해당 호스트에서 모든 추가 연결을 시작 했 알 분산 장치 부하가 동일한 서버로 라우팅됩니다

1) .

2)라는 이름의 쿠키 읽을으로 나눔로드 밸런싱 : JSESSIONID

3)라는 이름의 쿠키 읽을으로 나눔로드 밸런싱 : ASPSESSIONID

나는 조금 혼란 스러워요은, 정확히 일어날를? 연결은 SSL이 될 것이므로 부하 분산을위한 쿠키를 읽을 기회가 없으므로 무엇을해야할까요?

일반 서버에 부동산을 저장하는 것에 대해 알고있는 솔루션은 무엇입니까? 나는 memcache가 좋은 해결책이라고 읽었지만, 다른 어떤 것이 있는가?

건배.

+0

나는이 질문을 좋아한다. –

답변

2

SSL을로드 밸런서와 함께 사용하는 경우 SSL 인증서를 백 엔드 서버가 아닌로드 균형 조정 서버에 배치하는 것이 일반적입니다. 이 방법으로 1 서버에 1 개의 인증서 만 있으면됩니다. 그런 다음로드 밸런서는 일반 HTTP를 사용하여 백엔드 서버와 통신합니다. 이것은 분명히 백 엔드 서버가 인터넷에서 직접 액세스 할 수 없도록 요구합니다.

따라서로드 밸런서가 요청의 암호 해독을 담당하면 jsessionid 요청을 검사 할 수도 있습니다.

고정 세션은 부하 분산 장치로 Apache과 잘 작동합니다. 아파치 모듈 mod_proxymod_proxy_balancer을 확인해야합니다.

1

일반적으로 SSL로드 균형 조정은 클라이언트가 HTTPS를 통해로드 균형 조정기와 통신하고로드 밸런서가 HTTP를 통해 웹 서버와 통신하고 있음을 의미합니다.

일부로드 균형 조정기는 웹 서버와의 SSL 세션을 설정 (쿠키를 읽을 수 있도록)하기에 충분히 똑똑하고 클라이언트와 별도의 SSL 세션을 유지 관리합니다.

그리고 일부로드 균형 조정기는 웹 서버 쿠키를 사용하지 않고도 끈적임을 유지할 수 있습니다. 로드 밸런서는 클라이언트에게 자신의 쿠키를 보낼 수 있습니다 (다른 많은 끈적한 설정도 있습니다).

관련 문제