在DSAPI中,網絡通信主要有如下幾種:
1 [TCP]
TCP服務端
TCP客戶端瀏覽器
2 [UDP]
UDP服務端
UDP客戶端
UDP指令版服務端
UDP指令版客戶端網絡
3 [HTTP]
HTTP服務端
(客戶端由瀏覽器或任何能訪問HTTP的函數或軟件替代,DSAPI中未提供HTTP客戶端)
HTTP指令版服務端
HTTP指令版客戶端函數
對於以上這些,在開發網絡通信程序過程當中如何選擇呢?先看上述各服務端功能的主要服務對象:大數據
TCP服務端網站 |
|
適用範圍加密 |
須要高速通信,且服務端主動推送信息spa |
優 點對象 |
高速通信、服務端主動傳輸接口 |
缺 點事件 |
必須服務端先開才能提供客戶端鏈接、須自行維護一個斷開重連機制 |
|
|
UDP服務端 |
|
適用範圍 |
高速短數據量通信(通常數據量不該超過65500字節) |
優 點 |
高速通信、服務端可延遲啓動、無需事先創建鏈接 |
缺 點 |
數據量較小、不能確保必定發送成功,建議服務端和客戶端雙方作應答機制 |
|
|
UDP指令版服務端 |
|
適用範圍 |
高速短數據量通信(通常數據量不該超過65000字節),目前大部分物聯網、工業通信等正在使用DSAPI中的UDP指令版服務端 |
優 點 |
高速通信、服務端可延遲啓動、無需事先創建鏈接、傳輸過程加密、內置自動重發、通信失敗(或無返回數據)自動觸發事件、內置客戶端用戶名密碼數據傳遞,可容許或拒絕返回給客戶端數據 |
缺 點 |
數據量較小、服務端不能主動推送數據給客戶端 |
|
|
HTTP服務端 |
|
適用範圍 |
WebAPI、小型靜態網頁和數據服務、網站公共數據接口 |
優 點 |
無需超高速通信、服務端可延遲啓動、無需事先創建鏈接、迷你IIS、可在任何支持http通信的服務端和客戶端使用、最大數據量默認200M之內(可更改)、無需架設IIS便可開始靜態網頁服務 |
缺 點 |
服務端不能主動推送數據給客戶端 |
|
|
HTTP指令版服務端 |
|
適用範圍 |
高速通信,目前不少物聯網、工業通信、醫院醫藥等正在使用DSAPI中的HTTP指令版服務端 |
優 點 |
高速通信、服務端可延遲啓動、無需事先創建鏈接、傳輸過程加密、內置自動重發、通信失敗(或無返回數據)自動觸發事件、內置客戶端用戶名密碼數據傳遞,可容許或拒絕返回給客戶端數據 |
缺 點 |
服務端不能主動推送數據給客戶端 |