2013-08-19 33 views
0

在當前項目中,我們有許多不同的WCF服務來實現不同的接口。由於每個東西都是一個管理嚴密的環境,因此我們需要爲每個WCF服務提供一些看門狗實例,以檢查可用性,以便在對其進行任何調用之前告訴我們的管理系統某個服務可用。WCF客戶端通道看門狗(監控)

搜索了幾個小時之後,我看到如何實現這一點的唯一方法是在服務合約中實施某種ping方法,該方法在線程中定期調用以查找服務的狀態。但是有許多不同的服務(其中一些是不實現某種「Ping()」方法的黑盒子),我們不希望爲每個接口實現Ping()過程。我們已經考慮爲我們所有的合同實施一個管理基礎接口,但是最終還是有網絡服務,我們不能改變任何事情,因爲它們不是我們的。

有沒有可能做到這一點?有某種服務/客戶端通道看門狗會自動保持活動消息/連接並報告連接問題或其他事件?

回答

0

太長評論哎呀...

你檢查ServiceMon並檢查它的可擴展性?......看WCF service health monitoring或者乾脆就是可以使用HTTPGET來查詢每個服務和檢查內容,在它的響應這意味着它正在運行?

+0

這是否也適用於使用NetTcp綁定的服務? – Atrotygma

+0

未經測試,但我不明白爲什麼不行,因爲您正在使用支持WCF的客戶端,並且所有服務均提供http響應。 –

+0

沒有冒犯,但一個評論允許600個字符,不是嗎? –

0

一個簡單的方法是ping wsdl。 如果web服務關閉,您在嘗試獲取和獲取該信息時會收到錯誤消息。

WCF serice不過是一個網站(一個特殊的網站,畢竟是一個網站),所以任何網站監控工具都可以勝任。