SOA权威指南:通过BEAAqualogicServiceBus实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SOA权威指南:通过BEAAqualogicServiceBus实现
2010年10月24日
《SOA权威指南:通过BEA Aqualogic Service Bus实现》
原书名: The Definitive Guide to SOA: BEA AquaLogic Service Bus
作者: 【美】Jeff Davies 【印度】Ashish Krishna 【美】David Schorow 著
译者:倪志刚王铭孜黄兆勤(2008年01月第1版第1次)
原出版社: Apress
电子工业出版社 Publishing House of Electronics Industry
北京市海淀区万寿路173信箱(100036)
JEFF DAVIES,BEA的SOA构架师与推广者,在软件领域有20多年的工作经验。
Jeff有丰富的零售软件,例如Windows与Macintosh 平台上的Act!,以及许多其他的商业应用程序(主要集中在电信领域)的开发经验。
他还做过企业应用程序的开发、设计、构架设计等方面的工作。
在加入BEA之前,Jeff是一家电信公司的首席构架师,主要
负责s0A。
在BEA,Jeff主要从事基于BEA的产品在一些实际项目中构建s0A解决方案的工作。
DAVID SCHOROW,有20多年的企业软件开发经验。
David是BEA AquaLogic Service Bus的首席构架师,指导了ALSB的开发与发展。
在加入BEA前,他是HP NonStop产品部门的首席Java构架师,负责监管许多不同的Java项目,包括NonStop Java虚拟机、NonStop SQL JDBC驱动程序,NonStop平台与WebLogic Server 的通信以及其他的企业Java产品。
David在高性能事务处理系统领域有丰富的经验,这些系统广泛用于飞机订票、保健与银行领域。
David 拥有MIT的理学学士学位与加州大学伯克利分校的博士学位。
内容简介
本书介绍了作为SOA核心和基础架构的ESB(Enterprise Service Bus,企业服务总线)的主要功能,并且重点介绍BEA的企业级ESB 产品——AquaLogic Service Bus(简称ALSB)。
在本书中,读者将通过很多详细的例子来领略ALSB如何与一些传统的系统相连接,以及Web Service通用的设计模式,丰富在SOA与ESB上开发与构架方面的经验。
本书总共15章,其中大多数章节在内容上相对独立,读者可以单独地阅读每一章。
不论是对ESB和SOA概念完全不了解的新手,还是ALSB的专家,本书都具有可读性和指导意义。
P24,@WebService含义
name: WebService 生成的WSDL将会以该name作为porttype targetNamespace: 目标命名空间
serviceName: 服务名,对应WSDL的<wsdl:service>元素
wsdlLocation: WSDL文件的相对或者绝对路径
endpointInterface: 服务端点接口SEI的文件的全限定名
P25,@SOAPBinding含义
style: 指定SOPA消息的编码类型【Document(*),RPC】
use: 指定SOPA消息的格式风格【Literal(*),Encoded】
parameterStyle: 定义了方法的参数格式【Bare,Wrapped(*)】
P26,@WebMethod含义
operationName: 操作名称,对应<wsdl:operation>元素,默认为Java方法名
action: 与操作对应的action,对SOAP Binding来说,就是SOAPHeader值。
P36,业务服务和代理服务
ALSB将服务分成两类:业务服务(Business Service)和代理服务(Proxy Service)。
客户端不直接调用业务服务,而是调用代理服务。
业务服务是在ALSB上定义的,代表ALSB以外的服务,可以理解为client stub,通过这个stub,ALSB可以访问外部的服务,而这个外部服务,就是服务提供者。
代理服务时ALSB上的一个服务,可以代表任何一个真实的服务,通过这个代理服务,可以在消费者和提供者之间建立一个抽象层。
P47,代理服务是由它的消息流定义的,一个消息流由一系列节点组成。
节点有4种类型:启动节点(Start),管道对节点(Pipeline Pair),路由节点(Route)和分支节点(Branch)。
启动节点:表示消息流的入口,不可编辑。
管道对节点:表示请求或者响应的消息路径,在请求或响应的不同阶段插入不同的操作,可以接一个其他类型的节点。
路由节点:叶子节点,一般转入到一个业务服务。
分支节点:判断分支,包括条件判断分支和操作判断分支。
P62,一个WSDL由6个部分组成,都在<definitions>根节点之
下。
type: 数据类型,用XML Schema表示
message: 所用到的消息(由type构造)
portType: 抽象接口,包括多个操作方法,每个操作方法的输入或者输出的消息由message构造
binding: 描述portType的绑定方式,包括协议、格式等
port: 服务端点的部署信息,主要是URL
service: port的集合。
P113,服务类型与传输协议
SOAP with WSDL: JMS,HTTP,HTTPS
SOAP without WSDL: JMS,HTTP,HTTPS
XML with WSDL: JMS,HTTP,HTTPS
XML without WSDL: JMS,HTTP,HTTPS,Email,File,FTP
消息类型(Binary,Text,MFL,xml): JMS,HTTP,HTTPS,Email,File,FTP
P176,安全范式下在SOA的挑战
1、身份管理(Identity Management):如何访问安全资源,比如数据库、文件系统或者一个需要提供用户密码才能访问的后端遗留系统。
2、消息及有效载荷的隐私保护:如何保证只有合法的服务提供者才能访问这些消息。
3、真实性(Authenticity):如何知道这些消息是真实的,而不是由未授权的人所发布的。
4、完整性(Integrity):如何保证这些消息和它的有效载荷在传输过程中不被篡改。
5、安全执行(Security enforcement):如何保证安全规则和策略被应用和执行。
6、安全互操作性(Security interoperability):如何强制实施
诸如SSL,数字签名等安全标准。
SOA坐标体系
企业服务映射原则1:如果一个服务必须跨越“域边界”才能完成其工作,它必须存在于企业服务层
企业服务映射原则2:企业服务层不能“跳过”域服务层
通信法则1:每个服务层都要知道它下面的那一层,而不是它上面的那一层
通信法则2:每一个服务层都知道ESL的信息
通信法则3:服务层之间使用Web服务方式
P209,什么是服务
服务的实现不是服务的一部分
任何需要客户知道的事情都是服务的一部分
服务受契约管理,契约定义服务提供什么以及何时如何提供服务。