socket 和 webservice 的区别和比较
时间紧迫,我就直奔主题.
目前需要说服客户使用webservice 而不是socket.
我觉得要先分别解释下什么是socket 什么是webservice..这个要我该怎么说才比较形象,让人一定就明白.
socket 属于7层中的那个层. 网上找了找,越看越迷糊. 有说属于应用层的. 有说属于传输和网络层的. 还有所属于网络和传输之间夹层的.昏了.
webservice要怎么叙述,才能让人觉得不用webservice 就是一种罪过呢..
"都怪上次说到 webservice+soap 在高负载和并发的情况下回出现消息堵塞或丢失."
---------------------------------------------------------------------------------------------------------------------------------------------
webservice 有一个 socket 难以比拟的优势:
webservice基于HTTP协议,是无状态的,因此可以例如现有非常成熟的Web集群来提供高负载,同比之下 socket 就非常难。
socket其实也可以无状态,连一下就断开.
webservice就是这么做的。
我觉得可以告诉用户,用socket做,其他人未必能懂,用webservice做,你很容易能用在其他地方,其他人也很容易访问到你。
昨天看到一句话:socket只是对TCP/IP协议栈操作的抽象,而不是简单的映射关系!!!有木有!!!有木有!!!
从表面上来看,Web Service就是一个应用程序,它向外界暴露了一个能够通过Web进行调用的API。这就是说,能够使用编程的方法通过Web调用来实现某个功能的应用程序。
从深层次上看,Web Service是一种新的Web应用程序分支,它们是自包含、自描述和模块化的应用,可以在网络(通常为Web)中被描述、发布、查找以及通过web来调用。
Web Service是基于网络的、分布式的模块化组件;它执行特定的任务,遵守具体的技术规范,这些规范使得Web Service能与其它兼容组件进行互操作。它可以使用标准的互联网协议,Web Service平台是一套标准,它定义了应用程序如何在Web上实现互操作
不同层不能比. webservice的实现还得溯源到socket. 做为通讯接口 webservice能实现的,socket毫无怀疑的能实现.用socket编程更原始更繁琐
socket 和 webservice 的区别和比较的更多相关文章
- socket和webService的区别
网络七层协议为:物理层.数据链路层.网络层.传输层.会话层.表示层.应用层 socket 只是 java在网络层定义的类,用来实现网络层.上面的各层需要我们自己在程序里实现. 例如端口可以自己定义 . ...
- Socket与TcpClient的区别
原文:Socket与TcpClient的区别 Socket和TcpClient有什么区别 原文:http://wxwinter.spaces.live.com/blog/cns!C36588978AF ...
- iOS之 HTTP、Socket、TCP的区别(易混
一.HTTP 是一种超文本传输协议,全名hypertext transfer protocol,从字面意思上可以看出该协议用于规定客户端与服务端之间的传输规则, 传输的内容不限于文本(任意类型的数据) ...
- WebAPI和WebService的区别
WebAPI和WebService的区别 WebAPI用的是http协议,WebService用的是soap协议 WebAPI无状态,相对WebService更轻量级.WebAPI支持如get,pos ...
- RPC和WebService的区别
最近分析的这个系统,逻辑架构中有一层是RPC interface.之前对RPC不熟悉,就上网搜索了一下资料,在此总结一下: RPC是Remote Procedure Calling,远程过程调用的缩写 ...
- socket servlet webservice 区别及使用场景
原文地址: http://blog.csdn.net/sdjkjsdh/article/details/51569481 1. Socket:使用TCP/IP或者UDP协议在服务器与客户端之间进行传输 ...
- Socket与TcpClient的区别(转载)
Socket和TcpClient有什么区别 原文:http://wxwinter.spaces.live.com/blog/cns!C36588978AFC344A!322.entry 回答: &qu ...
- Socket与TcpClient的区别(转载)
Socket和TcpClient有什么区别 原文:http://wxwinter.spaces.live.com/blog/cns!C36588978AFC344A!322.entry 回答: &qu ...
- .NET Remoting与Socket、Webservice和WCF的比较及优势 (转)
1:Socket VS Remoting 使用socket无疑是效率最高的.但是,在复杂的接口环境下,Socket的开发效率也是最低的.故在兼顾开发效率的情况下,可以使用Remoting来代替Sock ...
随机推荐
- day04_08-while查询所有行
<?php $link = @mysql_connect('localhost','root',''); mysql_query('use test',$link); mysql_query(' ...
- CodeForces-999D Equalize the Remainders
题目链接 https://vjudge.net/problem/CodeForces-999D 题面 Description You are given an array consisting of ...
- shell之netstat命令
语 法:netstat [-acCeFghilMnNoprstuvVwx] [-A<网络类型>][--ip] 补充说明:利用netstat指令可让你得知整个Linux系统的网络情况. ...
- php 数据库内容增删改查----增
首先,建立一个主页面(crud.php) <!DOCTYPE html> <html lang="en"> <head> <meta ch ...
- form表单文件上传 servlet文件接收
需要导入jar包 commons-fileupload-1.3.2.jar commons-io-2.5.jar Upload.Jsp代码 <%@ page language="jav ...
- 在python中如何比较两个float类型的数据是否相等
奇怪的现象 前几天跟同事聊起来,在计算机内部float比较是很坑爹的事情.比方说,0.1+0.2得到的结果竟然不是0.3? >>> 0.1+0.2 0.300000000000000 ...
- 再看数据库——(5)Group By与Order By
在使用sql语句时,很多人都会分不清order by与group by,其实简单的说: order by -- 排序 group by --分组 1.order by是行的排序,默认为升序. 有两种方 ...
- 虚机中访问外网;NAT中的POSTROUTING是怎么搞的?
看下docker中是怎么配置的网络 在虚机中访问外网:设定了qemu,在主机上添加路由:sudo iptables -t nat -I POSTROUTING -s 192.168.1.110 -j ...
- Dictionary & Chinese
Dictionary & Chinese DC & dict https://github.com/zollero/simplified-chinese https://github. ...
- 深入解析VueJs中的V-bind指令
v-bind 主要用于属性绑定,比方你的class属性,style属性,value属性,href属性等等,只要是属性,就可以用v-bind指令进行绑定.这次主要介绍了VueJs中的V-bind指令,需 ...