论坛首页 入门技术论坛

再看 Web Services (一)什么是Web Service

浏览 1796 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-03-14   最后修改:2009-03-22
SOA
论坛上,大家不停的在讨伐SOA, Web Service; 可是Web Service越来越火,为什么一个被人讨厌的东西却还是不停的有人再用?

这几天,重新翻了一下书,再次回头来看看为什么要用Web Service。从来没有看过 关于SOA的paper,所以,不能写什么

SOA与Web Service的区别:
SOA,一种概念,将固有的 软件的概念 转换成应用 或 服务
Web Service: 一种中间件;一种SOA的实现方式;

1. WebService 是什么:
在WS之前,要先知道两个定义 分布式系统 和 中间件 (figure 1-1 left)
-----------------------------------------------------------------
应用、服务                          应用、服务

中间件  --------------------->      RMI RPC
                                      请求应答协议
                                       编码 和 外部数据表示

                                  
操作系统 
计算机 和 网络硬件                  TCP、UDP
----------------------------------------------------------------
Figure 1-1

中间件的主要作用:
中间件实际上是个软件层,用于屏蔽异构性。
中间件还能提供应用程序使用的基础服务,如CORBA 提供命名,安全,事物,永久存储 和事件通知。

中间件的产品:
早期的中间件 远程过程调用(e.g. SUN PRC) 和 组通信 (e.g. ISIS);
后来的中间件
面向对象的中间件 CORBA, JAVA RMI,Web Services, Microsoft DCOM (WCF)。

中间件中重要部分:编码 和 外部数据表示
CORBA采用的是CORBA CDR; Java 采用的是 Java 序列化。
这两种方式,各有缺点:CORBA heavyweight
Java RMI:只限于java平台。

那Web Service 是哪里来的?
Web Service的产生是由 XML的应用和推广而产生的。在CORBA CDR与Java RMI受困的时候,XML因为其简单,可宽展性 和 跨平台性,成了外部数据表示的第一选择。由此,导致了 WS的出现
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics