程序员人生 网站导航

分布式系统(2)---Web Service原理

栏目:框架设计时间:2015-06-06 08:51:52

          尽人皆知,异构系统之间使用Web Service比较适合,上面1篇介绍了EJBEJB是业务逻辑的散布式,是系统内部的调用。而Web Service比较合适用于系统间的调用。

 

甚么需要用到WebService,举例说明:

        比如说天气预报,股市,地图等都是需要从互联网上的其他系统服务器获得的,它向外界暴露出1个能够通过Web进行调用的API,通过API去获得数据。

实时天气预报:


Web Service定义

            Web Service提供了1个在不同的利用和平台之间的交互操作标准。这个交互操作通过1系列基于XML的开放标准实现,包括WSDLSOAPUDDI等。这些标准提供了1系列通用方法来定义发布和使用Web Service

 

Web Service的基本层次结构

服务发布协议:                  UDDI(提供发布场所)

服务描写协议:                  WSDL(描写场所的服务功能)

服务操作协议:                  SOAP(规定WSDL文档的格式)

统1数据格式:                  XMLWSDL文档的书写)

基础连接:                           InternetHTTP数据传输协议)

 

Web Service实现技术

UDDIWSDLSOAP

         UUDI的目的是为电子商务建立标准;UDDI是1套机遇Web的、散布式的、为Web Service提供的、信息注册中心的实现标准规范,同时也包括1组使用企业能将本身提供的Web Service注册,以使别的企业能够发现的访问协议的实现标准。

         

          WSDL是1种XML格式,用于网络服务描写为1组端点,这些端点对包括面向文档信息或面向进程信息的消息进行操作。这类格式首先对操作和消息进行抽象描写,然后将其绑定到具体的网络协议和消息格式上以定义端点。相干的具体端点即组合成为抽象端点。

          WSDL规范定义了如何使用SOAP消息格式、HTTP GET/POST消息格式和MIME格式来完成Web Services交互的规范。

WSDL描写了:

1)服务做些甚么?

服务所提供的操作

2)如何访问服务?

数据格式和访问服务操作的必要协议

3)服务位于何处?

由特定协议决定的网络地址,如URL

 

          SOAP即简单对象访问协议(Simple Object)是1种轻量级协议,用于在分散型、散布式环境中交换结构化信息。SOAP利用XML技术定义1种可扩大的消息处理框架,提供了1种可通过量种底层协议进行交换的消息结构。这类框架的设计思想是要独立于任何1种特定的编程模式和其他特定实现的语义。

           SOAP包括以下几部份:谁来处理这些消息;消息包括的内容;和这些内容是可选的或是必须的。以下图:

也就是说这几种技术的核心都是XMLXMLWeb Service平台中表示数据的基本格式,它既是平台无关的、优势厂商无关的。解决了数据表示的问题。

 

WebService的流程

            WebService是建立可互操作的散布式利用程序的新平台。它是1套标准,定义了利用程序如何在Web上实现互操作性。任何语言,任何平台上的客户都可以浏览Web Service提供的WSDL文档,用以调用WebService.客户根据WSDL描写文档,生成1个SOAP要求消息。生成的SOAP要求会被嵌入在1个HTTP POST要求中,发送到Web服务器来。Web服务器把这些要求转发给Web Service要求处理器。


Web Service解决了哪些问题?

         Web Service减轻了目前企业利用中出现的整合危机,相比较其他整合技术,使用Web Service可以以较低的代价对各种企业利用进行整合。从技术上讲,Web Service是1种新的机遇WebXML的中间件,XMLWeb解决了传统利用之间整合的各种辣手问题,例如异质性,传统利用都是平台相干的,而WebXML是平台无关的技术。

 

总结

          Web Service实现了跨平台,跨语言的远程调用。但其实不是只要远程调用都要用Web Service的,需要斟酌到效力的问题,大环境问题等等。


------分隔线----------------------------
------分隔线----------------------------

最新技术推荐