문제

대본:

웹 사이트는 사용중인 3 개의 서버에서 호스팅됩니다 iis 각각에.

세 가지 서버는 모두 Windows Server 2003과 함께 제공되는 네트워크로드 밸런싱 소프트웨어를 사용하여 클러스터링됩니다.

세 사이트는 모두 "상태 서버"로 지정된 별도의 서버에 세션 상태를 저장하도록 구성됩니다.

"상태 서버"를 확장하라는 요청을 받았습니다. 하나 이상의 상태 서버를 가질 수 있고 상태를 동기화 할 수있는 방법이 있습니까? 따라서 상태 서버 중 하나가 내려 가면 다른 서버 중 하나가 주 정보를 제공 할 수 있습니까?

도움이 되었습니까?

해결책

나는 memcached에 갈 것입니다. 각 웹 서버에서 설정 한 다음 추가 한 각 웹 서버에서 확장 할 수 있습니다. CodePlex에서 몇 명의 고객을 찾았습니다.

다른 팁

우리는 사용 상태 서버를 확장하십시오 이것을 위해 내가 일하는 곳에서, 그것은 일을 훌륭하게 수행하고 준비하기가 간단합니다. Microsoft가 또한 유사한 제품을 사용하고 있음을 이해합니다. 속도, 그러나 나는 그것에 대한 경험이 없습니다.

Soss의 유일한 단점은 당신이 그것을 지불해야한다는 것입니다. 그러나 나는 그들의 영업 및 지원 팀과 상호 작용하는 훌륭한 경험 만 가지고있었습니다. 당신이 라이센스를 얻는다면, 나에게 호의를 베풀고 그라 티스의 다니엘이 당신에게 보냈다는 것을 알려주십시오.)

분산 캐싱 기술을 찾고 있습니다. Microsoft Velocity는 기본 ASP.NET 세션 상태를 배포 할 수있는 속도로 대체하기 위해 Microsoft가 게시 한 예제입니다. Memcache와 같은 다른 캐싱 제공 업체가 있습니다.

편집하다: 이 답변을 현재 시간과 관련하여 더 많은 정보를 얻으려면이 유형의 기능은 AppFabric 제품과 함께 Windows Azure에 내장됩니다. 이것에 대한 간단한 정보는 여기에서 볼 수 있습니다. Windows Server 및 Azure AppFabric Virtual Launch 5 월 20 일

SQL Server의 세션 데이터베이스는 코드가 거의없고 구성 변경으로 쉽게 확장 될 수 있습니다. ASP.NET 세션을 세션 데이터베이스에 고정시킬 수 있으며 팜의 웹 서버가 요청에 관계없이 세션 ID 기반 SQL 상태 서버 매핑이 완벽하게 작동합니다. 이것은 아마도 SQL Server를 사용하여 ASP.NET 세션 상태를 확장하는 가장 좋은 방법 중 하나 일 것입니다. 자세한 내용은 링크를 읽으십시오

세션 상태에 대한 진정한 스케일 아웃 모델

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top