您的位置:首页 > 其它

webservice和remoting和ajax的区别

2008-07-05 14:26 344 查看
remoting和webservice的区别

其实现的原理并没有本质的区别,在应用开发层面上有以下区别:

1、Remoting可以灵活的定义其所基于的协议,如果定义为HTTP,则与Web Service就没有什么区别了,一般都喜欢定义为TCP,这样比Web Service稍为高效一些

2、Remoting不是标准,而Web Service是标准;

3、Remoting一般需要通过一个WinForm或是Windows服务进行启动,而Web Service则需要IIS进行启动。

4、在VS.net开发环境中,专门对Web Service的调用进行了封装,用起来比Remoting方便

我建议还是采用Web Service好些,对于开发来说更容易控制

Remoting一般用在C/S的系统中,Web Service是用在B/S系统中

后者还是各语言的通用接口

相同之处就是都基于XML

为了能清楚地描述Web Service 和Remoting之间得区别,我打算从他们的体系结构上来说起:

Web Service大体上分为5个层次:

1. Http传输信道

2. XML的数据格式

3. SOAP封装格式

4. WSDL的描述方式

5. UDDI

总体上来讲,.NET 下的 Web Service结构比较简单,也比较容易理解和应用:

一般来讲在.NET结构下的WebService应用都是基于.net framework以及IIS的架构之下,所以部署(Dispose)起来相对比较容易点.

从实现的角度来讲,

首先WebService必须把暴露给客户端的方法所在的类继承于:System.Web.Services.WebService这个基类

其次所暴露的方法前面必须有[WebMethod]或者[WebMethodAttribute]

WebService的运行机理

首先客户端从服务器的到WebService的WSDL,同时在客户端声称一个代理类(Proxy Class)

这个代理类负责与WebService服务器进行Request 和Response

当一个数据(XML格式的)被封装成SOAP格式的数据流发送到服务器端的时候,就会生成一个进程对象并且把接收到这个Request的SOAP包进行解析,然后对事物进行处理,处理结束以后再对这个计算结果进行SOAP包装,然后把这个包作为一个Response发送给客户端的代理类(Proxy Class),同样地,这个代理类也对这个SOAP包进行解析处理,继而进行后续操作。

这就是WebService的一个运行过程。

下面对.net Remoting进行概括的阐述:

.net Remoting 是在DCOM等基础上发展起来的一种技术,它的主要目的是实现跨平台、跨语言、穿透企业防火墙,这也是他的基本特点,与WebService有所不同的是,它支持HTTP以及TCP信道,而且它不仅能传输XML格式的SOAP包,也可以传输传统意义上的二进制流,这使得它变得效率更高也更加灵活。而且它不依赖于IIS,用户可以自己开发(Development)并部署(Dispose)自己喜欢的宿主服务器,所以从这些方面上来讲WebService其实上是.net Remoting的一种特例。

webservice跟ajax的区别和相同点
这两个东西的确有许多相同之处

1.两个都使用xml技术实现,

2.两个都使用http协议.

3.两个都实现不同平台不同开发语言间的数据交换

但两又有许多不同

1.webservices是服务端技术,主要在后台为各种程序提供服务,使用原有的soap(简单对象访问协议),主要解决的问题是提供一种理想的单位或机构间商业数据安全交换。

2.ajax则是客户端技术,它使用已经广泛使用的xmlhttp技术,它主要解决的问题是目前浏览器被动地位,使得客户端可以主动性从服务器获取信息,变成一个富客户端程序,从而减少服务端的程序工作和服务器的负荷,也使得客户端更灵活,功能更强大.它与webservices相比有更大的优越性,因为我们几乎不用改我们的服务端网站程序就可提供类似webservices的数据服务,

补充:

1、Web Service 不受客户端Browser限制,而编写 Ajax 就要考虑了。

2、Ajax 是一种写法,而 Web Service 是一种标准,也就是说Ajax需要有相关的后台页面进行与之相配合才行,而Web Service是独立存在的,由别的Actor 进行调用。

3、Web Service 属一种架构,扩展性与分布式较好。而Ajax在架构上可以说是一种空白。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: