2014-10-23 5 views
0

최근 서버를 Server 2012 R2 및 IIS 8.5로 업그레이드했으며 부하가 분산 될 때 WCF 서비스에 문제가 발생했습니다. 서버 중 하나가로드 밸런서에 없으면 WCF 서비스를 호출 할 수 있습니다. 로드 밸런서에 두 개의 서버가 모두있는 순간 보안 협상 실패 또는 종점 주소 예외가 발생합니다.로드 균형 조정 문제 서버 2012 R2의 WCF 서비스

WCF 서비스는 이전에 IIS 7.5가 설치된 Server 2008 및 Server 2012에서로드 균형 조정을 수행했습니다. WCF 서비스로 변경된 사항은 없지만 Server 2012 R2에서는 위에서 언급 한 오류가 계속 발생합니다. 이전 서버 환경에서 설정 한 모든 설정이 2012 R2 환경 및 IIS 8.5에서도 동일하게 유지되도록했습니다.

우리는 끈끈한 세션을 사용하도록 설정하지 않았으며 WCF 서비스의로드 균형을 조정하기 위해 활성화 된 적이 없습니다. 우리는 Server 2012 R2를 사용하도록 설정했지만 문제가 해결되지 않아 다시 사용 중지되었습니다.

서버 2012 R2 및 IIS 8.5에서 우리 측에서 설정해야 할 것이 있습니까?

+0

서비스가 어떤 바인딩을 사용하고 있습니까? – tomasr

+0

wsHttpBinding의 customBinding을 사용하고 있습니다. – codemonkey

답변

0

문제가 발견되었습니다. 이전 서버와 현재 서버 환경간에 차이가있었습니다.

AWS를 사용하여 서버의로드 밸런스를 수행하고 새 서버 환경에서 활성화되고 이전 서버 환경에서 비활성화 된 "크로스 존로드 균형 조정"설정이 있습니다. 이 설정은 부하가 분산 된 서버 전체에 균등 한로드를 보장합니다.

세션을 사용하지 않는 한 WCF 서비스가 stateless라는 인상을 받았기 때문에 이것은 놀랍습니다. 우리가 사용하고있는 바인딩은 서버 선호도가 필요합니다. 그래서 우리가 실수를 저지르고 있었던 이유입니다.

관련 문제