socket和webservice都有跨平台的优点,
但是:
socket偏底层,效率高,但是开发成本大。
webservice效率低,但是开发成本低廉。
webservice,基于http协议,以xml为载体的通信方式。
好处,一直观,二标准,也方便异构系统的交互。
如果想提供对外的业务访问的接口,可能需要浏览器,各种语言的客户端等各种异构系统访问,是首选。
这两个不同一个层面的东西:
socket是套接字,开发服务器客户端网络通信程序的相关接口
webservice是一种服务,在http协议上的一个服务器服务,客户端通过请求发送消息到服务器端,服务器进行响应,
谷歌金山词霸,提供查单词服务的?那肯定是webservice啊,但你可以用socket进行开发客户端,比如,知道词霸的webservice地址,那你可以用socket编写客户端发送相关请求道webservice地址,那服务端会响应你想要的东西回来
socket,提供了tcp/ip或者udp的通信的实现,如果做标准的服务器,比如下载服务器;或者语音通信的程序,或者视频,文件传输……这些只能用socket。
单纯用socket写会很烦的,你要处理各种东西,协议的编解码等等,所以这种情况下推荐mina,netty或者grizzly。