2010-01-30 64 views
2

有沒有一種快速可靠的方法來檢查WCF服務是否可用並接受請求,或許是在方法中構建的一些最佳實踐?顯然來自代碼。如何檢查WCF服務是否可用?

謝謝

回答

3

魯本斯已經提到的,你可以在你的服務來檢查創建一個虛擬的「ping」方法。這工作正常,可能已經足夠 - 但是:這樣的ping方法當然只能保證你的服務是可達和響應。

在許多情況下,您的服務方法將依次取決於其他資源 - 例如,您需要從數據庫中讀取數據,解析XML文件,呼叫另一個服務等等。因此,即使您的服務可用,並且對您的Ping方法作出響應,也不保證您的服務的另一個呼叫將會成功。

對您的服務的簡單Ping方法通常無法檢查所有這些從屬系統/資源的可用性。所以最終,只有一半(或更少)的故事你可以檢查 - 只是意識到這一點!爲了長話短說:你不能真正檢查一個服務是否可用並且正在運行 - 你基本上只需要在需要時調用它,並且準備好處理不好的事情,比如超時,網絡連接斷開等等。良好的防禦性編程實踐在連接的,面向服務的世界中更是如此!

4

您可以實現一個空方法並在每次需要時調用它。

,你可以嘗試這篇文章太:How to: Use Health Monitoring to Instrument a WCF Service for Security

+0

提供的鏈接提供了有關如何在服務主機端實施監視的想法。這對於如何檢測服務是否可以從服務客戶端運行沒有幫助。至少我是這樣理解這個問題的。 – Manfred 2012-05-19 23:29:09

相關問題