Thrift:服务集成的实用方法(一)

2008-12-4    | |
打印本文章
RSS

导读:REST和SOAP原则下所设计的服务在当今网络约束的应用中颇为流行,通过使用XML有效负荷和WSDL/WADL描述符,可以减少平台之间的差异。

关键词:REST SOAP 服务 XML WSDL WADL 平台

正在加载数据...

【TechTarget中国原创】在不同的技术平台之间建立通信一直是企业数据处理遥不可及的梦想,尽管大多数IT部门在机构中都试图避免信息‘岛’。事实上,我们还是要呼吁SOA应该通过大量的服务资源来避免这些‘岛’。下面我要向大家介绍一个名为Thrift的项目,以及这个项目应对SOA问题的方法。

  为了能够更好的了解Thrift所要解决的问题,我们先要看看更多的SOA方法。REST和SOAP原则下所设计的服务在当今网络约束的应用中颇为流行,通过使用XML有效负荷和WSDL/WADL描述符,可以减少平台之间的差异,缩小各种技术平台和程序设计语言之间的差异……

【TechTarget中国原创】在不同的技术平台之间建立通信一直是企业数据处理遥不可及的梦想,尽管大多数IT部门在机构中都试图避免信息‘岛’。事实上,我们还是要呼吁SOA应该通过大量的服务资源来避免这些‘岛’。下面我要向大家介绍一个名为Thrift的项目,以及这个项目应对SOA问题的方法。

  为了能够更好的了解Thrift所要解决的问题,我们先要看看更多的SOA方法。REST和SOAP原则下所设计的服务在当今网络约束的应用中颇为流行,通过使用XML有效负荷和WSDL/WADL描述符,可以减少平台之间的差异,缩小各种技术平台和程序设计语言之间的差异。

  早在REST和SOAP出现以前,分布式通信就实现了——但是经常会通过DCOM和CORBA被分解。理论上讲,像REST和SOAP这些最新的技术试图通过“包裹共同方法里的端点”来屏蔽平台之间的差异。

  所有这些分布式通信在避免信息‘岛’方面迈出了很大的一步。并且在应用于公司内部应用的过程中也带来了许多复杂性和内务操作,这就必须依赖另一个环境,该环境意在协调分布式通信的各方。基于JAVA业务接口(JBI)标准基础上的产品或者微软公司自己的BizTalk服务器都在协调不同客户和服务器应用之间的矛盾,而不必考虑用户和服务器使用的底层技术平台,就可以完成一个业务流程。

  最后这些产品涉及到许多集成情况包括企业通信和更加复杂的支持例如BPEL(业务流程执行语言)的使用。此外,由于自身的标准,这些支持还十分的复杂。结果在集成流程中增加新的分布式技术会成指数地加复杂性,这是因为有些外围实例在一个平台中是标准,到了另一个平台可能就不存在了。

  有些分布式技术如CORBA的不一致性可能就是致命的弱点。比如,在一个像C++或者C编程语言中建立一个用户,要用Python或者Java和服务器通信可能非常复杂;那么两个语言的数据类型分配是否均匀呢?怎样解释语言之间的错误呢?像这样的周边实例问题需要纳入我们的思考范围。而且支持编程语言的数量越大,服务器和用户之间的交流就越为复杂。

  假如你希望支持尽可能多的编程语言,并且对周边实例不感兴趣,只是单纯的想要增加简单性,严格的处理服务,以及其它像JBI或者BizTalk这样的功能。

  Thrift是在Apache软件基金的监督下开发的开放源项目,在以下编程语言中简化了对跨语言服务的开发:C++,Java,Python,PHP,Ruby,Erlang,Perl,Haskell,C#,Cocoa,Smalltalk和OCaml。Thrift实际上简化了客户和服务器的创立,虽然它还要为分布式通信提供并管理所有的管道。而这些管道可以被理解成为通信连接协议,目标序列化以及插座管理。

查看全文
 
自从SOA建立伊始,Toufic Boubez就在这领域工作。他在IBM的时候就与人合著了原始的UDDI规范。后来他与人共同创立了Layer 7 technologies,他做CTO。
 
SOA这个阶段是相当重要的发展。那时我身处两个“软件革命”之中。其中之一是面向对象革命。从smalltalk中我们知道了面向对象……
 
最近几年软件发展得到很大牵引力,成为治理WSDL的有效方式。该软件是由GNU LGPL提供的建立在Java基础之上的SOAP测试工具。
 
Andrew在本篇文章将会继续为您解答从主机发送到SOAP服务器过程中所遇到的问题。假设你必须呼叫一个Web服务,该Web服务将会以SOAP-XML格式接受一个请求,同样以……
 
代表性状态传输(Representational State Transfer,REST)在Web领域已经得到了广泛的接受,是基于SOAP和Web服务描述语言的Web服务的更为简单的替代方法……
本技术手册旨在探讨如何为封装WS-BPEL流程逻辑所需的Web服务设计WSDL定义。因为SOA提倡用“契约优先”的方式来设计服务,所以理解由WS-BPEL引发的这种独特服务契约设计理念,是成功构建有效流程和服务的关键因素。
本专题分六部分探讨SOA设计模式,当初设计面向服务架构的一大初衷就是降低服务间耦合度,由此提高服务的灵活性和自由度。
本专题分六部分探讨服务定向原则,主要探讨如何将服务定向原则应用于构成服务的自动化逻辑。如何越过单个服务层面,应用作为范例的服务定向并形成能够封装整个企业领域的服务层。
最新更新
专家答疑
技巧
Eric Newcomer
是否存在某些经验法则,让人们在网络互操作性和进程互操作性二者之间做出选择?换句话说,如果我遇到吞吐量问题,是不是就不该选择Web服务了?
Jason Bloomberg
评价“企业mashups”的标准是什么?尤其是在企业mashups和“主机包装”项目的关系上?我们对企业mashups的定义是:丰富网络环境下,一套建立在SOA基础之上的组合……
Rami Jaamour
你能解释一下什么是回归测试吗?怎样才能保证你的回归测试是正确的呢?回归测试旨在揭示所有由软件修改所引起的回归,在当今复杂多变的商业环境下……

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
登录Email
请输入您的登录Email
密码
下次自动登录