Webservice设计与模式

Webservice设计与模式

ID:40301228

大小:22.10 KB

页数:5页

时间:2019-07-30

Webservice设计与模式_第1页
Webservice设计与模式_第2页
Webservice设计与模式_第3页
Webservice设计与模式_第4页
Webservice设计与模式_第5页
资源描述:

《Webservice设计与模式》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Webservice的设计和模式Webservice作为一项新的技术出现在我们面前,它的出世是用于解决在不同的平台下的应用的协同的。目前几乎每家厂商都要去开发Webservice应用,然而如果缺乏对Webservice更深的了解,不能很好的在设计阶段处理好一些重要的问题,那么最终完成的系统必然是效率低下,没有可靠性的产品。 在设计Webservice应用时,以下几点务必要考虑到:l        管理好与外系统的协同关系l        掌握底层的传输模型l        提供与应用相适应的安全策略l        计划好部署的相关事项 以下,将就这几条相关的设计需求和

2、一些常用模式是如何应用于Webservice模型展开详细讨论。在讨论中,你会发现Webservice这项新的技术是如何与我们在以往的软件开发相结合的。 l        标准提供了协同的能力 Webservice的一个最基本的目的就是提供在各个不同平台的不同应用系统的协同工作能力。为了使得一个公司的网络应用达到最高的效率,存在它自己和它的合作伙伴,供应商以及客户之间的Webservice,应该能够实现无缝的交互。如果在众多的Webservice之间不能轻松的实现交互,那么该应用的效率将大打折扣。但是,在现实中这种情况是极有可能出现的。由于各个公司对业务的理解各不相同,就

3、是理解相同的情况下,对于相同的概念也可能用不同的形式加以表现,具体而言就是对于同一数据可能采取不同的xml表示。由于以上的原因,对于协同性的问题应该在设计应用架构时就加以考虑,而不是留待以后去改变。 Webservice主要由以下几块技术所构成,SOAP(SimpleObjectAccessProtocol),WSDL(WebserviceDescriptionLanguage),以及UDDI(UniversalDescription,DiscoveryandIntegration)。 在这里我们不会去详细研究这些技术,而是揭示他们的一些重要特性,这些特性需要在Webs

4、ervice的设计时详加考虑。 WSDL是实现协同能力的关键,它提供了一份契约用于与新老的应用之间交互。这项技术使得各个组织可以将标准的制定集中在Service的外部接口,而不用考虑各组织的具体实现。简而言之,它实现了Webservice的接口与实现的分离。从而使得标准的制定,更加容易。并且,基于这份接口描述,很多工具可以从中自动生成客户端代码,减少了开发者的工作量,并使得大部分开发者摆脱了编写SOAP消息传递代码过程。 SOAP是实现在各个Webservice组件之间传递消息的传输层。因此,SOAP应该是一项透明的协同技术。但是,由于很多的SOAP实现方法却与标准背道

5、而驰,要么添加了新的扩展功能要么删减了一些标准功能。由于对SOAP标准的支持程度不同,使得Webservice的协同能力大打折扣,实现协同的困难加大了。基于这种情况,当开发者需要Webservice运行在不同平台上时,就要对具体情况加以了解并相应的编码以解决这种不一致性。如果所有的SOAP实现组织都能够遵循标准的话,那么Webservice的开发者就不需要考虑使用该Webservice的底层平台了。 尽管如此,不同SOAP实现的协同还是相当困难,因为协同标准的制定存在大量的分歧,目前一些组织正致力于标准的制定,比如SOAPBuilders和WS-I。然而,现在Webse

6、rvice开发者只有针对不同平台,给予不同的实现,使得开发的成本和负担加大了。l        理解传输模型 SOAP并不是完全透明的解决方案,它把一些复杂的实现细节隐藏起来。Webservice的开发者必须深入的了解SOAP,了解底层的传输机制以及模型,从而知道SOAP是如何实现的。在一些简单的应用中,某些工具可以帮助Webservice的开发者生成SOAP消息传递的代码,但是这只在最简单的应用中有效。真正的情况不可能那么简单,可能在某些方面你需要有特殊的处理(这种情况在实际开发中是很常见的),这个时候,你就需要直接操纵SOAP的消息传递代码,以及一些底层的XML内容

7、。因此,Webservice的开发者需要深入了解SOAP和XML层的内容。 在开发Webservice的接口的时候,不要以为使用XML技术,协作性的问题就迎刃而解了,XML并不是解决集成问题的灵丹妙药。这里同样需要标准的制定,需要一个在业界公认的词汇表。仅仅在你的设计框架中引入XML技术并不能保证系统具有协同性,XML仅仅是用来描述数据的语言,XML自己并不提供语义去理解数据。就如同英语和德语都使用拉丁字母,但是他们的语义却并不相同。 即使你使用相同的语言,也不能保证具有良好的协作性。比如你的公司可能使用Order描述一个订单,但你的合作

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。