DSAPI中TCP、UDP、HTTP的选择
在dsapi中,网络通讯主要有以下几种:
1 [tcp]
tcp服务端
tcp客户端
2 [udp]
udp服务端
udp客户端
udp指令版服务端
udp指令版客户端
3 [http]
http服务端
(客户端由浏览器或任何能访问http的函数或软件替代,dsapi中未提供http客户端)
http指令版服务端
http指令版客户端
对于以上这些,在开发网络通讯程序过程中如何选择呢?先看上述各服务端功能的主要服务对象:
tcp服务端 |
|
适用范围 |
需要高速通讯,且服务端主动推送信息 |
优 点 |
高速通讯、服务端主动传输 |
缺 点 |
必须服务端先开才能提供客户端连接、须自行维护一个断开重连机制 |
|
|
udp服务端 |
|
适用范围 |
高速短数据量通讯(一般数据量不应超过65500字节) |
优 点 |
高速通讯、服务端可延迟启动、无需事先建立连接 |
缺 点 |
数据量较小、不能确保一定发送成功,建议服务端和客户端双方做应答机制 |
|
|
udp指令版服务端 |
|
适用范围 |
高速短数据量通讯(一般数据量不应超过65000字节),目前大部分物联网、工业通讯等正在使用dsapi中的udp指令版服务端 |
优 点 |
高速通讯、服务端可延迟启动、无需事先建立连接、传输过程加密、内置自动重发、通讯失败(或无返回数据)自动触发事件、内置客户端用户名密码数据传递,可允许或拒绝返回给客户端数据 |
缺 点 |
数据量较小、服务端不能主动推送数据给客户端 |
|
|
http服务端 |
|
适用范围 |
webapi、小型静态网页和数据服务、网站公共数据接口 |
优 点 |
无需超高速通讯、服务端可延迟启动、无需事先建立连接、迷你iis、可在任何支持http通讯的服务端和客户端使用、最大数据量默认200m以内(可更改)、无需架设iis即可开始静态网页服务 |
缺 点 |
服务端不能主动推送数据给客户端 |
|
|
http指令版服务端 |
|
适用范围 |
高速通讯,目前很多物联网、工业通讯、医院医药等正在使用dsapi中的http指令版服务端 |
优 点 |
高速通讯、服务端可延迟启动、无需事先建立连接、传输过程加密、内置自动重发、通讯失败(或无返回数据)自动触发事件、内置客户端用户名密码数据传递,可允许或拒绝返回给客户端数据 |
缺 点 |
服务端不能主动推送数据给客户端 |
上一篇: 认识非法网上赚钱
下一篇: Java 添加Word目录的2种方法