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