SOA思想、技术与系统集成应用详解
基本信息
- 作者: 梁爱虎 [作译者介绍]
- 丛书名: Java开发专家
- 出版社:电子工业出版社
- ISBN:9787121052996
- 上架时间:2008-1-4
- 出版日期:2007 年12月
- 开本:16开
- 页码:532
- 版次:1-1
- 所属分类:
计算机 > 计算机网络 > Web Server > SOA/SOC(面向服务框架)
编辑推荐
凝聚Java魅力,成就开发专家.
看清Java万花筒的本质,从复杂的表象中寻找普遍的规律,深刻理解Java的核心思想...
内容简介回到顶部↑
信息集成是全球经济一体化的关键,本书阐明了soa的核心思想和未来软件的发展方向—应用服务的集成。结合具体的实例详细阐述了目前主流的soa各种关键核心技术的思想内涵:融合web service 、jbi、sca、sdo、bpel等。
本书通过实例详细介绍了目前主流的开源的soa产品技术:涵盖servicemix、cxf、synapse、mule、tuscany sca和tuscany sdo,以及主流的企业级soa产品技术:详述bea aqulogic bus 服务总线、ibm websphere integration developer、ibm websphere process server和ibm websphere esb服务总线的应用思想和应用开发方法。
本书指出了目前流行的各种应用软件包及其服务,如erp、crm、供应链、零售业、银行信贷等,其本质都是各种业务模块的集成,并分别阐明了对这些业务系统实施soa集成的基本思想和具体解决方案。
本书适用于广大的java程序开发人员,特别是那些希望尽快掌握soa理论思想精髓和主流soa核心技术、主流开源soa产品、主流企业级soa产品及进行soa项目实际开发的人员,也适合高等院校相关专业的广大师生作为参考用书。
本书通过实例详细介绍了目前主流的开源的soa产品技术:涵盖servicemix、cxf、synapse、mule、tuscany sca和tuscany sdo,以及主流的企业级soa产品技术:详述bea aqulogic bus 服务总线、ibm websphere integration developer、ibm websphere process server和ibm websphere esb服务总线的应用思想和应用开发方法。
本书指出了目前流行的各种应用软件包及其服务,如erp、crm、供应链、零售业、银行信贷等,其本质都是各种业务模块的集成,并分别阐明了对这些业务系统实施soa集成的基本思想和具体解决方案。
本书适用于广大的java程序开发人员,特别是那些希望尽快掌握soa理论思想精髓和主流soa核心技术、主流开源soa产品、主流企业级soa产品及进行soa项目实际开发的人员,也适合高等院校相关专业的广大师生作为参考用书。
作译者回到顶部↑
本书提供作译者介绍
梁爱虎,博士,IBM高级IT专家。曾在美国硅谷多家公司(Netpace、Angelengineers、Octasoft、Cynosure technology、Getsilicon等)任高级软件工程师,从事基于J2EE的网上知识竞赛、数据挖掘、网上电子银行系统、网上股票交易系统、半导体芯片生产相关的供应链管理系统(SCM)等项目的设计开发。
现任中国IBM公司高级IT专家,是多个大型项目的技术负责人。包括以technical leader的角色负责基于SOA架构的美国pepboys汽车修理和加油连锁店POS系统项目的设计和开发。以solution and architecturel.. << 查看详细
现任中国IBM公司高级IT专家,是多个大型项目的技术负责人。包括以technical leader的角色负责基于SOA架构的美国pepboys汽车修理和加油连锁店POS系统项目的设计和开发。以solution and architecturel.. << 查看详细
目录回到顶部↑
第1篇 soa理论思想及核心技术
第1章 soa思想概述
1.1 it的本质及其发展历史
1.1.1 it的本质:创建信息和调用信息
1.1.2 it的进一步:集成信息
1.1.3 it程序语言发展史
1.2 soa的基本思想:面向服务
1.3 soa的基本要素
1.3.1 松散耦合
1.3.2 粗粒度
1.3.3 位置和传输协议透明
1.4 soa的目标:敏捷的、不受限制的集成
1.5 soa与佛家禅宗思想的相通之处:“随需而变”与“无所住”
1.6 小结
第2章 web service编程详解
2.1 web service的原理及概念
2.1.1 命名空间(name space)
2.1.2 wsdl的本质:服务内容的标准化描述
2.1.3 soap的本质:标准的传输协议
2.1.4 uddi的本质:服务的公共网址
第1章 soa思想概述
1.1 it的本质及其发展历史
1.1.1 it的本质:创建信息和调用信息
1.1.2 it的进一步:集成信息
1.1.3 it程序语言发展史
1.2 soa的基本思想:面向服务
1.3 soa的基本要素
1.3.1 松散耦合
1.3.2 粗粒度
1.3.3 位置和传输协议透明
1.4 soa的目标:敏捷的、不受限制的集成
1.5 soa与佛家禅宗思想的相通之处:“随需而变”与“无所住”
1.6 小结
第2章 web service编程详解
2.1 web service的原理及概念
2.1.1 命名空间(name space)
2.1.2 wsdl的本质:服务内容的标准化描述
2.1.3 soap的本质:标准的传输协议
2.1.4 uddi的本质:服务的公共网址
前言回到顶部↑
全球经济一体化正在成为整个世界经济的发展趋势。整个世界的经济活动主要是由信息流、资金流、产品生产和物流组成的。其中信息流是最核心的环节,它用来驱动资金流、产品生产和物流。.
一个企业是其上游供应商的消费者,同时它也会成为其下游企业的供应商,这样使整个世界经济成为一个不可分割的经济链。每个企业通过这个经济链的进账和出账来获取利益。一个企业一旦被挤出这个经济链,它也就失去了存在的价值。这个经济链表面上看起来是由资金流、产品生产和物流来构成的,但是其本质是由一个无形的信息链构成的。一个企业如果不能很好地掌握这个信息链,就会被挤出这个经济链。随着这个经济链的运转越来越迅速,每个企业都有随时被甩出这个经济链的危险。作为一个企业,如果要屹立于这个“经济链”或者“经济洪流”之中,必须要做到两点:一是要随时了解外部的市场需求并调整自己的商业战略;二是要对外部市场需求作出快速的反应。以上两点归结为一点,就是“随需而变”。
IT(Information Techology,信息技术)服务的本质就是“信息”(或者是“经过加工、集成的信息”)的存取。作为一个经济活动的企业,需要管理好企业内部信息(如产品生产信息、库存信息、财务信息、订单信息、发货信息等)、企业外部信息(上游供应商信息、下游销售渠道信息、下游消费群体和个人信息等),以及企业内部和外部相关信息(如给上游供应商的订单信息、上游供应商的发货信息和给上游供应商的财务付款信息等)。
一个企业如果很好地集成了企业内部信息,也就是集成了自己内部的“信息孤岛”,它就可以很快对外部市场的需求作出快速的反应。企业对信息集成的愿望一直都是存在的,但是现有的技术极大地妨碍了这一愿望的实现。现有的技术障碍主要包括以下几个方面:
服务的非标准化;
接口和服务的紧密耦合和各种应用的紧密耦合;
各种应用接口的粒度过细,不能反映业务的真实需求;
服务的位置和传输协议的非透明化。一旦服务的位置和传输协议发生变化,所有客户端的调用程序都需要修改。
“SOA”的出现,恰逢其时。“SOA”采用松散耦合的服务、反映业务真实需求的粗粒度的服务,以及位置和传输协议透明的服务,消除了信息集成的障碍,它能使企业随市场的需求而“随需而变”。此外它还采用“点石成金”的方法,在不改变现有系统的基础上,使其能够和其他系统进行轻松集成。
业务和技术的紧密耦合妨碍了业务的快速更新,一直是广大企业的“心病”。SOA将业务与技术完全分离的架构思想使得企业能够对外部市场的变化作出迅捷的反应。
目前Java作为一种跨平台的语言已经成为软件编程的主流。随着SOA时代的到来,Java语言本身将会进一步整合,Java将会向更简单化及更标准化的方向发展。其中的标准化主要分为以下两个方面。
第一个方面是数据存取方法的标准化。如XML文件数据的存取方法和数据库JDBC数据的存取方法就不一致,一个Java开发人员在实际项目中需要知道各种数据调用方法的差别之处,这一方面导致IT技术人员总是需要不停地学习新出现的技术,使得IT技术人员相当辛苦。另外,因为这些接口标准的不一致,也导致了不同系统之间互操作性的难度。
所有接触过JDBC的开发人员,都会因为同一个JDBC接口方法可以存取不同的数据库数据的功能而受益,这主要由于不同的数据库都有其独特的JDBC的driver包,通过JDBC的driver包将不同数据库的差异性摆平,使得同一个JDBC的存取方法能够调用不同的数据库数据。例如上面提到的XML文件数据和JDBC数据库数据将会采用相同的存取方法,同时通过XML的帮助包(helper类)及JDBC的帮助包(helper类)将它们的差异性摆平。这就是IBM、BEA等全球IT企业联合推出的SDO(Service Data Object)数据模型编程标准和规范。
第二个方面是业务组件调用的标准化,目前的各种业务组件的调用方法都不一样,如EJB Session Bean的调用方法、Web Service的调用方法、JMS的调用方法等,它们的调用方法都不一样,这样增加了资源整合的难度。有鉴于此,目前IBM、BEA等全球IT企业联合推出Service Component Architecture (SCA)标准,用以统一各种业务组件的调用。同时Sun也推出了JBI标准,通过正规消息路由器(Normalized Message Router,NMR)来统一业务服务的调用。值得说明的是,目前IBM和BEA对JBI不是很支持。无论如何,业务组件调用的标准化也必然是大势所趋。
数据存取方法的标准化(SDO)、业务组件调用的标准化(SCA或者JBI)和传输协议的标准化(Web Service)将很快成为SOA的标准,同时将进一步降低Java的入门门槛,更重要的是这些标准化的方法将会使IT资源的整合更加容易。随着SOA标准化的进一步发展,必将导致IT资源整合的加速,SOA应用必将遍布于各个领域,大量标准化的服务必然大量涌现,将创造大量新的就业机会,同时也是广大IT人员需要转型的方向。
本书缘起的另外一个很重要原因是SOA只是一个架构,真正要实现SOA一定需要具体的平台性的产品来支持。目前已经有了大量的企业级和开源的SOA产品,本书将其原理和应用方法通过有代表性的实例展现出来,希望对读者开发SOA项目能起到帮助作用。
笔者希望,在不久的将来,以Java为主导的“SOA”集成技术将会把全球的“信息孤岛”整合起来,使这个地球成为一个真正意义上的“地球村”。在每一个时刻,每一个“信息岛”的每一个需求都会被传达到“地球村”的每一个地方,得到最快的反应。
本书的组织架构和主要内容..
本书覆盖4个主流SOA。
主流的SOA的核心技术思想:Web Service、JBI、SCA、SDO、BPEL。
一个企业是其上游供应商的消费者,同时它也会成为其下游企业的供应商,这样使整个世界经济成为一个不可分割的经济链。每个企业通过这个经济链的进账和出账来获取利益。一个企业一旦被挤出这个经济链,它也就失去了存在的价值。这个经济链表面上看起来是由资金流、产品生产和物流来构成的,但是其本质是由一个无形的信息链构成的。一个企业如果不能很好地掌握这个信息链,就会被挤出这个经济链。随着这个经济链的运转越来越迅速,每个企业都有随时被甩出这个经济链的危险。作为一个企业,如果要屹立于这个“经济链”或者“经济洪流”之中,必须要做到两点:一是要随时了解外部的市场需求并调整自己的商业战略;二是要对外部市场需求作出快速的反应。以上两点归结为一点,就是“随需而变”。
IT(Information Techology,信息技术)服务的本质就是“信息”(或者是“经过加工、集成的信息”)的存取。作为一个经济活动的企业,需要管理好企业内部信息(如产品生产信息、库存信息、财务信息、订单信息、发货信息等)、企业外部信息(上游供应商信息、下游销售渠道信息、下游消费群体和个人信息等),以及企业内部和外部相关信息(如给上游供应商的订单信息、上游供应商的发货信息和给上游供应商的财务付款信息等)。
一个企业如果很好地集成了企业内部信息,也就是集成了自己内部的“信息孤岛”,它就可以很快对外部市场的需求作出快速的反应。企业对信息集成的愿望一直都是存在的,但是现有的技术极大地妨碍了这一愿望的实现。现有的技术障碍主要包括以下几个方面:
服务的非标准化;
接口和服务的紧密耦合和各种应用的紧密耦合;
各种应用接口的粒度过细,不能反映业务的真实需求;
服务的位置和传输协议的非透明化。一旦服务的位置和传输协议发生变化,所有客户端的调用程序都需要修改。
“SOA”的出现,恰逢其时。“SOA”采用松散耦合的服务、反映业务真实需求的粗粒度的服务,以及位置和传输协议透明的服务,消除了信息集成的障碍,它能使企业随市场的需求而“随需而变”。此外它还采用“点石成金”的方法,在不改变现有系统的基础上,使其能够和其他系统进行轻松集成。
业务和技术的紧密耦合妨碍了业务的快速更新,一直是广大企业的“心病”。SOA将业务与技术完全分离的架构思想使得企业能够对外部市场的变化作出迅捷的反应。
目前Java作为一种跨平台的语言已经成为软件编程的主流。随着SOA时代的到来,Java语言本身将会进一步整合,Java将会向更简单化及更标准化的方向发展。其中的标准化主要分为以下两个方面。
第一个方面是数据存取方法的标准化。如XML文件数据的存取方法和数据库JDBC数据的存取方法就不一致,一个Java开发人员在实际项目中需要知道各种数据调用方法的差别之处,这一方面导致IT技术人员总是需要不停地学习新出现的技术,使得IT技术人员相当辛苦。另外,因为这些接口标准的不一致,也导致了不同系统之间互操作性的难度。
所有接触过JDBC的开发人员,都会因为同一个JDBC接口方法可以存取不同的数据库数据的功能而受益,这主要由于不同的数据库都有其独特的JDBC的driver包,通过JDBC的driver包将不同数据库的差异性摆平,使得同一个JDBC的存取方法能够调用不同的数据库数据。例如上面提到的XML文件数据和JDBC数据库数据将会采用相同的存取方法,同时通过XML的帮助包(helper类)及JDBC的帮助包(helper类)将它们的差异性摆平。这就是IBM、BEA等全球IT企业联合推出的SDO(Service Data Object)数据模型编程标准和规范。
第二个方面是业务组件调用的标准化,目前的各种业务组件的调用方法都不一样,如EJB Session Bean的调用方法、Web Service的调用方法、JMS的调用方法等,它们的调用方法都不一样,这样增加了资源整合的难度。有鉴于此,目前IBM、BEA等全球IT企业联合推出Service Component Architecture (SCA)标准,用以统一各种业务组件的调用。同时Sun也推出了JBI标准,通过正规消息路由器(Normalized Message Router,NMR)来统一业务服务的调用。值得说明的是,目前IBM和BEA对JBI不是很支持。无论如何,业务组件调用的标准化也必然是大势所趋。
数据存取方法的标准化(SDO)、业务组件调用的标准化(SCA或者JBI)和传输协议的标准化(Web Service)将很快成为SOA的标准,同时将进一步降低Java的入门门槛,更重要的是这些标准化的方法将会使IT资源的整合更加容易。随着SOA标准化的进一步发展,必将导致IT资源整合的加速,SOA应用必将遍布于各个领域,大量标准化的服务必然大量涌现,将创造大量新的就业机会,同时也是广大IT人员需要转型的方向。
本书缘起的另外一个很重要原因是SOA只是一个架构,真正要实现SOA一定需要具体的平台性的产品来支持。目前已经有了大量的企业级和开源的SOA产品,本书将其原理和应用方法通过有代表性的实例展现出来,希望对读者开发SOA项目能起到帮助作用。
笔者希望,在不久的将来,以Java为主导的“SOA”集成技术将会把全球的“信息孤岛”整合起来,使这个地球成为一个真正意义上的“地球村”。在每一个时刻,每一个“信息岛”的每一个需求都会被传达到“地球村”的每一个地方,得到最快的反应。
本书的组织架构和主要内容..
本书覆盖4个主流SOA。
主流的SOA的核心技术思想:Web Service、JBI、SCA、SDO、BPEL。
【插图】








点击看大图






加载中...

