2011-11-25 2 views
3

다른 클라이언트가 사용할 비즈니스 로직을 포함하고 데이터를 노출하는 서비스를 만들어야합니다.업데이트시에도 가용성이 100 % 인 WCF 서비스를 만드는 방법은 무엇입니까?

문제는 단일 WCF 서비스로 개발할 때 업데이트를 잠시 중단해야한다는 것입니다. 이것은 허용되지 않습니다.

플러그인이있는 디렉토리를 감시하고 파일이 변경되면 동적으로로드하는 핵심 WCF 서비스를 만들려고합니다. 이것을 올바른 방법일까요? 그런 시스템을 WCF와 함께 구성합니까?

+3

100 % ** ** 문자 그대로 ** 달성 할 수 없습니다. 구글, 아마존, 페이스 북은 100 % 할 수 없다. 그들은 당신보다 더 많은 예산을 가지고 있습니다. 필요한 9 개의 수를 결정하십시오 (분당 99.9 % - 99.99999 %?). 여분의 9 개를 추가하면 훨씬 비쌉니다. –

+1

'shutdown-copy-startup'에 어느 정도 시간이 걸립니까? –

+0

중단 시간은 얼마나 걸립니까? –

답변

10

로드 균형 조정을 허용합니까? 그런 다음 두 대의 서버를 하나씩 업데이트 할 수 있습니다. 중단이나 복잡한 플러그인 아키텍처가 필요하지 않습니다.

+2

나는 100 % 동의합니다. 유지 보수 및 오류 발생 가능성을 높일 수있는 복잡성을 추가하기보다는 하드웨어를 추가하십시오. –

2

Azure의 다중 인스턴스는이를 달성하는 데 비용 효과적이지 않지만 쉬운 방법입니다.

중단 시간없이 한 번에 하나의 인스턴스 만 업데이트합니다. > 1 인스턴스를 사용하면 가동 시간이 99.9 %가됩니다. SLA

2

IIS (일반 웹 응용 프로그램)에서 호스팅하십시오. 업데이트시 새 dll을 'bin'디렉토리에 복사하면 응용 프로그램이 재활용됩니다. 실질적으로 중단 시간없이.

관련 문제