2010-10-05 242 views
1

WCF中是否有一些機制可用於「預啓動/預熱」在IIS中託管的WCF服務? - 類似SharePoint網站的熱身腳本重新啓動服務器後重新啓動WCF服務

我有這樣的情況,即服務器在夜間重新啓動,第二天在WCF服務啓動時出現長時間延遲。我無法在使用這些服務的各種應用程序中更改超時,因此第一批用戶在他們使用應用程序時早上報告錯誤

這是在Windows 2003 Server和IIS 6.0上,所以IIS應用程序池熱身模塊,http://www.iis.net/download/applicationwarmup,因爲這是爲IIS 7.5

注:該模塊似乎已被暫時撤回,見細節... IIS Forum

+0

這個問題在... http://stackoverflow.com/questions/2063461/iis-web-applications-warmup ...似乎只是指SharePoint和Web應用程序,而不是WCF服務 – SteveC 2010-10-05 11:50:42

回答

1

我知道你不喜歡的答案,我想我重複自己,因爲它不是我第一次張貼。在7.5版之前的IIS中預熱任何東西的方法是使用預定的控制檯應用程序來ping您的網站/服務並預熱它們。這是一個醜陋的解決方案,但它很有效,很容易,我在每個需要處理這個需求的項目上都看到它。

+0

啊,直到他們升級到IIS 7.5 ......感謝您的幫助,計劃任務已安裝並正在工作 – SteveC 2010-10-06 10:56:39

0

WCF服務應立即準備好當他們開始。只要確保服務設置爲在服務器引導時自動啓動。

+0

道歉,didn沒有說清楚......這些是在IIS中託管的WCF服務,而不是在Window服務中。 – SteveC 2010-10-05 11:52:11

+0

我從來沒有在IIS中託管過,總是爲他們使用Windows服務。聽起來很奇怪,他們需要熱身?!你可以編寫一個預定的事件來打開它在系統重新啓動時預熱它? – jimplode 2010-10-05 12:06:59

+0

這種思維方式......看起來很詭異,但是我想這就是IIS 7.5模塊的用途......只是希望我們有7.5 – SteveC 2010-10-05 15:46:54

0

您可以使用Windows Server AppFabric的,它具有自動統計功能來保持服務始終。但是您需要在IIS 7.5上安裝App Fabric。

+0

感謝您的指針...似乎是IIS 7.5的唯一自動啓動選項,因爲IIS模塊已暫時撤銷,請參閱[IIS論壇](http://forums.iis。淨/噸/ 1176740.aspx) – SteveC 2011-07-16 09:35:35