Apache Web服务和Axis2外文翻译资料

 2022-07-25 13:21:31

英语原文共 308 页,剩余内容已隐藏,支付完成后下载完整资料


Apache Web服务和Axis2

Apache Axis2是来自于Apache的下一代Web服务框架。Apache软件基金会启动Apache SOAP作为它的第一个Web服务框架。接下来,他们开发了Apache Axis,这是一个在Apache中十分成功的项目之一,现在在行业中仍被大量使用。由于行业和用户群体的需求快速的变化着,Apache Axis不能独自满足这些要求,因此Apache Web服务社区在2004年启动了Apache Axis2项目。在很短的时间内,Apache Axis2成为事实上的开放源代码的java Web服务框架,它现在广泛被用于工业和学术界。Axis2,Apache的下一代网络服务栈,通过发布另一个开发版本,一步步接近第一个生产版本。在本章中,我们将了解更多有关网络服务的历史、标准以及作为网络服务的组成部分。在本章的最后,我们将讨论一个新的Web服务引擎的需要,并最终如何安装和运行Axis2。在这里,我们更关注网络服务和相关技术。特别是,我们将覆盖:

bull; 面向服务的体系结构

bull; 概述:Web服务

bull; Web服务标准和行为标准

bull; Apache Web服务栈

bull; 开始学习Axis2

面向服务的体系结构(SOA)

孤立的计算机时代已经结束了。现在,“连接使我们站起来,隔离使我们落下去”成为计算的座右铭。网络和通信设施以一种前所未有的方式连接着世界。这个世界通过硬件支撑系统并且连接数千台计算机,这些系统有能力支配曾经梦想中的能力。然而,计算机科学缺乏技术和抽象能力来利用建立好的通信网络。分布式计算的目标是提供这样的抽象。RPC、RMI IIOP和CORBA在网络的层次上为开发者构建提供了一些建议。这些建议没有考虑问题的一个重要性质。系统是由众多异构子系统组成的,但这些建议需要所有的参与者都使用一种编程语言或少许语言。服务面向体系结构(SOA)提供了答案,通过定义一系列概念和模型来使相同的和不同的组件整合在一起。SOA提供了一个更好的方式来实现松散耦合系统,因此,可扩展性和灵活性更高。此外,类似于面向对象编程(OOP),SOA有较高的可重用性。有三种主要的方式可以在他们的系统中使用SOA的能力:

bull; 现有的信息系统:例如,IBM MQSeries、TIBCO、JMS等等

bull; Plain Old XML (POX): 例如,XML/HTTP, REST等等

bull; Web服务:例如,SOAP,WSDL,ws - *

在常用的通讯系统中,java消息服务(JMS)在这个行业中扮演重要的角色,并成为一个通用的消息传递接口系统。我们可以找到许多不同的JMS消息类型,如文本,字节,名称值对,流,和对象。这类消息系统的一个主要缺点是它们没有一个单一的线格式(串行化格式)。因此,协同操作是一个大问题:如果2个应用程序使用JMS进行交流,那么它们必须是一种相同的实现方式。Sonic, Tibco, and IBM是商业市场的领导者,并且JBoss, Manta和ActiveMQ是常用的开源实现方式。Plain Old XML或者POX是另一种方式暴露功能的方法,并且在系统中能使用SOA。随着网络的广泛使用,POX方法更加受到欢迎。大部分web应用暴露XML接口,我们可以开发组件来和它们交互。谷歌地图,Auto complete,和亚马逊服务是大量使用XML接口来暴露功能的几个例子。在大多数情况下,POX是与REST(具象状态转移)一同使用。REST是一种基于WEB体系结构的模型,它是基于网址对应资源的概念。GET,PUT,POST和DELETE是在REST体系中使用的动词。往往与理论观点相关联,因为这个原因,REST一般不用于复杂的交互。

常用的三种实现SOA的方式中,Web服务可以被认为是最标准,最灵活的方式。网络服务扩展自POX的思想,并增加额外的标准,使通信更加有组织与标准化。网络服务成为流行的SOA功能的机制背后有几个原因,如这里所说的:

bull; Web服务使用WSDL描述,WSDL可以捕获任何复杂应用及所需服务质量。

bull; 网络服务使用SOAP信息传输机制,如SOAP是一种特殊类型的XML。它可以获得所有XML的扩展功能。

bull; 有许多标准机构为网络服务来创建和执行标准。

bull; 有多个开源和商业的网络服务实现。通过使用标准和程序,网络服务提供应用程序和编程语言独立机制的整合与交流。不同的编程语言可以定义不同的方式实现Web服务,但他们可以相互,因为他们都使用相同的信息格式,他们分享。

网络服务概述

互联网是革命性的业务,提供负担得起的和有效的与他们的合作伙伴以及客户的联系方式。然而,存在着降低网络生产力的问题。在这些问题中,不兼容的应用程序和框架,不能互操作或交换业务数据等是主要关注的问题。特别是,当使用基于静态资源的应用程序,编组和解组的数据,以及添加的品质保障,是一个大问题。Web服务是一种新的电子商务模式,预计将改变业务应用的开发、集成和互操作。网络服务是一种自我描述,自成体系,模块化的可以在网络上访问的应用程序。它暴露一个XML接口,以及它与其他使用XML标准网络协议的消息的服务交流。Web服务背后的基本概念是SOA,一个应用不再是一个大的单片程序,但它被分成更小的,松耦合的程序。所提供的服务是松散耦合起来的,由于标准化和良好定义的接口。这些松散耦合的程序使体系结构非常可扩展的,因为可能用有限的成本进行添加或删除服务。因此,新的服务可以通过组合现有的服务来创建。为了清楚地了解松耦合,它能更好地理解相对性,这是紧密耦合的问题:

bull; 错误,延迟和停机时间通过系统传播

bull; 整个系统的弹性是基于最弱的部分

bull; 成本升级或迁移利差

bull; 很难从没用的权重来评估有用的部分

在网络服务中,有三个主要的标准机构,有助于提高互操作性,服务质量,基础标准:

bull; WS-I

bull; OASIS

bull; W3C

WS-I的主要功能是提供标准和规范,以确保互联互通、组合和分析。换句话说,创造标准和程序,在不同的网络服务框架强制规定互联互通所需的级别。OASIS的主要目标是提高网络服务质量服务,包括安全性、可靠性、交易和资源管理。W3C是Web服务标准的机构之一,定义了一个Web服务软件,被设计成在一个网络上支持可互操作的人机交互系统。它有一个可以处理的格式的接口,可以被机器执行,被人阅读。格式被称为网络服务描述语言(WSDL)。其他应用程序与网络服务进行通信,使用简单对象访问协议(SOAP)描述的方式传递消息,通常使用HTTP和XML序列化,与其他网络相关的标准相连接。

bull; 一个网络服务是一个众所周知的开放技术标准,它提供了一系列在这里列出的好处:

bull; 增加了互操作性,从而降低了维护成本

bull; 增加可重用性和组合能力(例如,使用公开可用的服务和重用他们或整合他们提供新的服务)

bull; 增加供应商之间的竞争,导致产品成本降低

bull; 从一个产品到另一个产品容易的过渡,导致培训成本较低

bull; 大程度的采用和长寿的标准,很大程度上使用从供应商和用户导致更高程度的接受

可以说,网络服务的概念是从面向系统的服务系统到对象的逻辑演化。在面向对象的系统中,在网络服务的一些基本概念是封装,消息传递,和动态绑定。然而,基于服务的概念扩展到超越方法签名,作为服务的信息,它位于何处,如何被调用,服务质量,和安全策略相关的服务也可以发表在服务接口(WSDL)。

如何组织进入网络服务?

有三种主要的方式,一个组织可以迁移使用到网络服务,由下面列出:

bull; 从零开始创建一个新的网络服务。开发人员创建服务的功能以及描述。

bull; 通过网络服务公开现有的功能。这里的服务的功能已经存在。只有服务描述需要被实施。

bull; 从其他供应商或业务伙伴中整合网络服务。当使用另一种服务来执行的服务时,比从头开始成本更有效。在这种情况下,该组织需要整合其他人的网络服务,甚至是商业伙伴的网络服务。

网络服务理念的实际应用是对第二、第三种方法的研究,允许其他网络服务和应用程序使用现有的应用程序。

网络服务描述了一个新的模型,该模型允许发布商业功能的网络,并提供通用访问这些业务功能。开发者和最终用户都受益于网络服务。Web服务模型简化了业务应用程序的开发和互操作。

Web服务模型

网络服务模型包括一组基本的功能,如描述,发布,发现、绑定、调用、更新和发布。同时,模型也由三名表演者:服务提供商,服务代理,服务请求者组成。下图显示功能和参与者的关系:

服务供应商是提供服务的个人(组织)。服务供应商的工作是创建、发布、维护和发布他们的服务。从业务的角度来看,服务供应商是所有者服务。从建筑的角度看,服务供应商是平台即持有该服务的实施。Google接口, Yahoo! 金融服务,亚马逊服务,和天气服务是一些服务提供商的例子。

服务经纪人提供一个服务描述(WSDL)库。这些描述是由服务提供商发布的。服务请求者将搜索库以识别所需的服务并获得绑定这些服务的信息。服务经纪人可以是公开的,在那里服务是普遍访问的,或者是私有的,只有一组特定的服务请求者可以访问服务。

服务请求者是寻找一种服务来实现要求的团体。请求者可以访问服务或应用程序(一个程序也可以是一个服务)。从业务的角度,这是要实现一个特定的服务的业务。从一个架构的角度,这是正在寻找和调用的应用程序服务。

Web服务标准

到目前为止,我们已经讨论了SOA,Web服务标准,以及Web服务模型。在这一节中,我们将讨论更多关于标准的讨论,使网络服务更加灵活和实用。在过去的几年里,有一个显著增长的网络服务作为应用集成的使用机制。如前所述,一个Web服务不同于其他SOA揭露机制,因为它包含各种标准,以解决在其他2种机制中遇到的问题。WS-*的成长(例如,Web服务的安全性,Web服务可靠消息,Web服务处理,和其他)标准,由网络服务管理机构监督,定义如下图所示的网络服务协议栈。我们将在这里看到在最基本的层中已被指定的标准:消息传递和描述,发现。

消息传递标准的目的是给框架交换的分布式环境中的信息。这些标准必须是可靠的,因此消息将只发送一次,只有预期的接收器将收到它。这是一个正在进行的研究的主要领域之一,因为一切取决于消息传递能力。

接下来,我们将详细讨论这些标准中的一些标准。首先,我们将开始XML-RPC的学习,其后来演变成SOAP。

XML-RPC

XML-RPC标准由微软的Dave Winer在1998年创建的。现有的RPC系统非常庞大。因此,创建一个轻量级的系统,开发人员通过指定的要点和定义极少的数数据类型和命令简化了它。该协议使用XML来编码,其调用HTTP作为传送机制。该消息被发送为POST请求,请求主体的格式是XML。一个程序在服务器上执行并返回它的值也被格式化成XML。参数可以是标量,数字,字符串,日期,以及复杂的记录和表结构。

作为新的功能被引入,XML-RPC被演变成现在已知的SOAP,这是接下来要讨论的。不过,有些人喜欢使用XML-RPC,因为其简单、简约,和易用性。

SOAP

最初,SOAP被定义为简单的对象访问协议。然而,最新的版本(SOAP1.2)已超越其原有定义。SOAP标准最初是由四个开发人员设计的,支持微软作为一个对象访问协议。该协议规定了在独立的运输方式的计算机网络上基于XML的消息交换。开发商因为它广泛的被专业机构和开源组织使用,所以选择XML作为主要信息格式。此外,还有各种各样的自由可用的工具,缓解过渡到一个基于SOAP的实现。

SOAP的概念是一种无状态的,单向的信息交换。不过,应用程序可以创建更复杂的交互模式,如请求响应,请求多个响应等,通过结合这样的单向交流基本协议和应用程序特定信息所提供的特性。SOAP对任何应用程序特定的数据的语义,它传达的如SOAP的信息,可靠的数据传输,防火墙穿越等等问题是保持沉默的。然而,SOAP提供应用程序特定的框架信息可以通过可扩展的方式传送。

Web服务寻址(WS-Addressing)

如果有一个标准的方式来表达信息应该在网络服务网络中传递的话,那将是非常有用的。这样可以减少开发人员的工作量,当他们能够简化网络服务交流和发展,并避免需要开发昂贵的解决方案,特别是往往难以跨平台交互操作。当与人的应用程序进行交互时,我们在浏览器中输入地址(或网址),然后进入导航页。我们点击内部链接,它需要我们到一个新的页面。当涉及到应用程序的通信,如网络服务,有指定地址的标准方法。因此,寻址使组织能够建立可靠的和可互操作的Web服务应用程序,通过定义一个用于识别和交换网络服务的标准机制多个端点之间的消息。

标准提供了独立的传输机制来处理消息并确定网络服务,对应于在网络服务体系结构中的相关描述中的地址和消息的概念。标准定义确定网络服务端点和安全终端到终端的端点信息识别。这使消息系统支持消息通过网络传输,包括处理节点,如端点管理者,防火墙,和网关在一个运输中心的形式。

服务描述

当我们购买产品,我们可以找到操作手册,或当我们买一个软件应用程序,我们应该有手册或文档使用它。当谈到OOP,我们以同样的方式阐述公共操作和界面,Java文档提供了有关可用的方法和方式的信息和如何使用它们。因此,要注意,对于分类,发现和使用服务,一个web服务的相关描述是很有必要的。这个描述不仅要人看得懂,应用也能看得懂。他们进一步提及的是,网络服务的描述在这两个语义和语法的层次是必需的。语义信息必须包含有关服务提供者的详细信息,服务是做什么的,特性如可靠性,安全性和消息序列。语义信息使服务请求者来决定服务是否满足他们的需要。另外,经纪人可

全文共7786字,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[154913],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。