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 ...
随机推荐
- Python import与from import使用
Python程序可以调用一组基本的函数(即内建函数),比如print().input()和len()等函数.Python本身也内置一组模块(即标准库).每个模块都是一个Python程序,且包含了一组相 ...
- 孤荷凌寒自学python第六十三天学习mongoDB的基本操作并进行简单封装2
孤荷凌寒自学python第六十三天学习mongoDB的基本操作并进行简单封装2 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第九天. 今天继续学习mongoDB的简单操作, ...
- 【Python】print 方法的参数
当在IDEL或者命令行中执行 help(print) 命令时,就可以看到 print 方法的详细说明: print(value, ..., sep=' ', end='\n', file=sys.st ...
- winform 路径
System.AppDomain.CurrentDomain.BaseDirectory d:\project\bin\release\
- Codeforces Round #326(Div2)
CodeForces 588A 题意:Duff喜欢吃肉,想在接下来的n天,每天都有Ai斤肉吃,但每一天肉的单价Pi不定,肉 可以保存不过期,现已知n天每天肉的斤数Ai,以及单价Pi,为了使每天都 ...
- idea中maven项目放到包中的mapper的xml文件不发布的问题
今天重新一下mybatis的基础,然后一直报错,提示的是 result map 找不到com.zm.model.User对象可是看 mapper的写法没问题.找了半天才发现 是mapper没扫描到 解 ...
- LeetCode -- Valid Parenthese
Question: Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine i ...
- tcp slowstart (TCP 慢启动)
tcp slowstart (TCP 慢启动) 慢启动定义 慢启动,是传输控制协议使用的一种拥塞控制机制.慢启动也叫做指数增长期.慢启动是指每次TCP接收窗口收到确认时都会增长.增加的大小就是已确认段 ...
- 网络战争 [KD-Tree+最小割树]
题面 思路 首先吐槽一下: 这题是什么东西啊??出题人啊,故意拼题很有意思吗??还拼两个这么毒瘤的东西???? 10K代码了解一下???? 然后是正经东西 首先,本题可以理解为这样: 给定$n$个块, ...
- 刷题总结——Throw nails(hdu4393)
题目: Problem Description The annual school bicycle contest started. ZL is a student in this school. H ...