在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指令版服务端 |
优 点 |
高速通信、服务端可延迟启动、无需事先创建链接、传输过程加密、内置自动重发、通信失败(或无返回数据)自动触发事件、内置客户端用户名密码数据传递,可容许或拒绝返回给客户端数据 |
缺 点 |
服务端不能主动推送数据给客户端 |