關於WebSocket不太懂,上網搜了一些資料,說是 WebSocket 是 html5 規範發佈的新協議,和 http協議徹底是兩個不一樣的概念,或者說基本不要緊;WebSocket 協議 和 http協議的惟一聯繫點在於,WebSocket 協議爲了兼容現有瀏覽器的握手規範而採用了 http協議中的握手規範 以創建WebSocket鏈接;html
那WebSocket通訊跟http協議有什麼不同的呢?html5
這篇文章中有詳細介紹:http://blog.csdn.net/pacosonswjtu/article/details/52035252windows
HTML5 WebSocket 設計出來的目的就是要取代輪詢和 Comet 技術,使客戶端瀏覽器具有像 C/S 架構下桌面系統的實時通信能力。 瀏覽器經過 JavaScript 向服務器發出創建 WebSocket 鏈接的請求,鏈接創建之後,客戶端和服務器端就能夠經過 TCP 鏈接直接交換數據。由於 WebSocket 鏈接本質上就是一個 TCP 鏈接,因此在數據傳輸的穩定性和數據傳輸量的大小方面,和輪詢以及 Comet 技術比較,具備很大的性能優點.瀏覽器
WebSocket 協議本質上是一個基於 TCP 的協議。爲了創建一個 WebSocket 鏈接,客戶端瀏覽器首先要向服務器發起一個 HTTP 請求,這個請求和一般的 HTTP 請求不一樣,包含了一些附加頭信息,其中附加頭信息」Upgrade: WebSocket」代表這是一個申請協議升級的 HTTP 請求,服務器端解析這些附加的頭信息而後產生應答信息返回給客戶端,客戶端和服務器端的 WebSocket 鏈接就創建起來了,雙方就能夠經過這個鏈接通道自由的傳遞信息,而且這個鏈接會持續存在直到客戶端或者服務器端的某一方主動的關閉鏈接。服務器
請求數據的方式能夠用WebSocket通訊方式,那麼WCF服務能夠支持WebSocket通訊嗎架構
在這個篇文章中找到了答案:https://msdn.microsoft.com/zh-cn/library/hh977020.aspxsocket
發現WCF4.5中新增了一個NetHttpBinding協議,支持Websocket的。可是須要在在windows 8及以上的系統中支持。性能
Websocket通訊協議,須要瀏覽器的支持,且對硬件服務器要求:server2012或window 8以上操做系統才能支持。操作系統