2012-09-18 81 views
0

我有小問題,如果我是主持人NetTcpBinding的WCF服務在IIS 7.0

  1. 如果我在IIS 7.0託管NetTcpBinding的WCF服務,我要調用從客戶端應用程序這個服務,那麼這將是什麼樣的格式用於溝通.. ??

  2. 是否有任何規則說,所有的NetTcpbinding都不應該在IIS上託管,而必須在控制檯應用程序或Windows服務上承載。

  3. 當extactly我想去TcpNet綁定.. ??

  4. 假設,我有兩個端點一個用於WsHttpbinding,另一個是NetTcpbinding並在IIS中部署服務,然後如果我想從客戶端應用程序使用NetTcp端點,那麼如何?這是正確的方式來做...?在這種情況下...

謝謝, Sukesh。

回答

0

NetTcpBinding的類信息:

http://msdn.microsoft.com/en-us/library/ms576421.aspx

  1. 從備註引用:

    的NetTcpBinding的默認生成運行時通信棧,其使用傳輸安全,TCP用於消息傳遞以及二進制消息編碼。此綁定是Windows Communication Foundation(WCF)系統提供的用於通過Intranet進行通信的適當選擇。

引用表示客戶端 - 服務器連接通過TCP建立,並用於發送以二進制編碼的SOAP消息。

2. 號甚至有上如何去做這個漂亮的博客文章:

http://blogs.msdn.com/b/santhoshonline/archive/2010/07/01/howto-nettcpbinding-on-iis-and-things-to-remember.aspx

3. 回到類信息:

更普遍,HTTP系統提供的綁定(如WSHttpBinding和BasicHttpBinding)被配置爲默認開啓事件,而NetTcpBinding綁定默認情況下爲關閉狀態, o選擇加入以獲得支持,例如,針對其中一個WS- *規範。這意味着在默認情況下,在端點之間交換消息時TCP的默認配置比爲HTTP綁定配置的默認配置更快。

這意味着該結合不做所有的更高級別處理該basicHttpBinding的和做的WSHttpBinding由於預期的額外協議層(HTTP層和WS- *規範層)。所以這是一個更高性能的綁定配置,使您在服務消息回覆中以更快的週轉時間,但是會損失HTTP層(客戶端不能再將HTTP POST soap信封發送到您的服務)。

4。 我會設置兩個獨立的服務端點(一個TCP和一個WSHttp)來實現相同的接口。然後,您可以在客戶端上設置兩個客戶端配置項,它們再次使用不同的綁定配置,但調用相同的接口。然後你可以加載。

<client>   
<endpoint name="WSEndpoint" address="http://address/WSEndpoint.svc" binding="WSHttpBinding" contract="Your.Contract.Namespace"/> 
<endpoint name="TCPEndpoint" address="http://address/TCPEndpoint.svc" binding="NetTcpBinding" contract="Your.Contract.Namespace"/> 
</client>