淺析Silverlight 4中的高速通信
本文將介紹的是Silverlight 4中的高速通信,相信通過本文能為大家更好的了解Silverlight 4有所幫助。為了更好地實現雙向通信,.NET Framework 3.0引入了一個全新的通信協議Net.TCP并作為WCF的一部分。現在Net.TCP將包含在即將發布的Silverlight 4中,相比于HTTP Polling Duplex,它極大地改進了吞吐量和連接的數量。
#T#
我們可以通過Silverlight 3綁定到HTTP Duplex Services上,因而應用可以不斷輪詢服務以進行更新,這模擬了雙向通訊的工作方式。Silverlight 4則引入了一個更好的解決方案:Net.TCP Port Sharing Service。與HTTP不同,Net.TCP提供了本地的雙向通信機制,極大地改進了應用的性能。打開的端口可以由多個應用共享,然而Silverlight只能訪問介于4502-4534范圍之間的端口。
根據微軟WCF開發經理Tomasz Janczuk所述,相對于HTTP Duplex來說,Net.TCP在如下方面進行了重大的改進:
吞吐量:對于UI線程來說提升了5.5倍,對于worker線程來說提升了870倍。
最大的客戶端數量:服務器可支持的連接客戶端數量是之前的5-6倍。
該協議適用于對通信速度要求很高的Silverlight應用。但其一個嚴重缺陷是所使用的一系列端口通常會被防火墻阻止,因此它不適合于公網、外部應用,而適合于局域網。另一個問題是它不支持SSL,這樣就會遇到安全問題,Janczuk說將在未來解決該問題。