webservice 与socket详解程序员

http://blog.csdn.net/m_123hj_520/article/details/9370723

webservice是基于http协议的soap协议的封装和补充,如果你考虑公共稳定的接口,你可以努力的考虑一下。
至于socket和http、webservices是否放在一起比较和考虑
主要还是看你关心的角度,而这个角度可以是技术层面的 ,也可以是用户需求层面

1 数据传输方式
1.1 socket传输的定义和其特点
    所谓socket通常也称作”套接字”,实现服务器和客户端之间的物理连接,并进行数据传输,主要有udp和tcp两个协议。socket处于网络协议的传输层。
    udp协议:广播式数据传输,不进行数据验证
    tcp协议:传输控制协议,一种面向连接的协议,给用户进程提供可靠的全双工的字节流,

socket传输的特点:
   优点
   1) 传输数据为字节级,传输数据可自定义,数据量小(对于手机应用讲:费用低)
   2) 传输数据时间短,性能高
   3) 适合于客户端和服务器端之间信息实时交互
   4) 可以加密,数据安全性强
   缺点:
   1) 需对传输的数据进行解析,转化成应用级的数据
   2) 对开发人员的开发水平要求高
   3) 相对于http协议传输,增加了开发量

1.2 基于http协议传输的定义和其特点

   目前基于http协议传输的主要有http协议 和基于http协议的soap协议(web service),常见的方式是 http 的post 和get 请求,web 服务。

基于http协议的传输特点

   优点:

   1) 基于应用级的接口使用方便

   2) 程序员开发水平要求不高,容错性强

   缺点:

   1) 传输速度慢,数据包大(http协议中包含辅助应用信息)

   2) 如实时交互,服务器性能压力大。

   3) 数据传输安全性差

2 各数据传输方式的适用范围

 2.1 socket传输适用范围

  基于socket传输的特点:socket 传输方式适合于对传输速度,安全性,实时交互,费用等要求高的应用中,如网络游戏,手机应用,银行内部交互等

 2.2 基于http协议传输的适用范围

  基于http协议传输的特点:基于http协议传输方式适合于对传输速度,安全性

  要求不是很高,且需要快速开发的应用。如公司oa系统,互联网服务等

网络七层协议为:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层

socket 只是 java在网络层定义的类,用来实现网络层。上面的各层需要我们自己在程序里实现。

例如端口可以自己定义 、数据包的定义、 数据包的加密解密等

而webService java实现了应用层的工具,他基于的服务为http协议,通过服务器才可以发布出去。

这样内部的端口的定义、数据包的定义和数据包的加密解密都做好了,所以我们就直接可以用了。

webService 内部数据格式为xml格式、由于基于http协议,所以可以不受防火墙的影响。

因为他的通信协议和我们浏览网页的协议是相同的。

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/7473.html

(0)
上一篇 2021年7月17日
下一篇 2021年7月17日

相关推荐

发表回复

登录后才能评论