CORBA企业解决方案[按需印刷]
基本信息
- 原书名: Enterprise CORBA
- 原出版社: Prentice Hall/Pearson
内容简介回到顶部↑
CORBA是分布式对象计算领域的主流技术之一。本书三位原作者在CORBA技术的应用上具有丰富的经验,并对CORBA中的接口定义、安全性、实体命名、事务、通信选择、两层或三层体系结构、数据库集成、容错性、系统开发与管理等方面有着深刻的了解。本书全面介绍基于CORBA的企业信息系统开发的各个方面,为系统设计人员构建真正大规模企业级CORBA系统提供专业的指导。本书适合于高级软件开发人员、大学计算机专业研究生和CORBA研究人员阅读参考。
目录回到顶部↑
目 录
译者序
序言
前言
第一部分 基 础
第1章 绪论 1
1.1 概述 2
1.2 简要的术语表 2
1.3 图形符号 3
第2章 corba回顾 6
2.1 corba的演变 6
2.2 boa代和poa代 7
2.2.1 boa代 7
2.2.2 poa代 7
2.3 激发生命周期 7
2.3.1 corba请求 7
2.3.2 激发生命周期:评估标准 9
2.3.3 激发生命周期:评估boa代 10
2.3.4 激发生命周期:评估poa代 13
2.4 对象生命周期 17
译者序
序言
前言
第一部分 基 础
第1章 绪论 1
1.1 概述 2
1.2 简要的术语表 2
1.3 图形符号 3
第2章 corba回顾 6
2.1 corba的演变 6
2.2 boa代和poa代 7
2.2.1 boa代 7
2.2.2 poa代 7
2.3 激发生命周期 7
2.3.1 corba请求 7
2.3.2 激发生命周期:评估标准 9
2.3.3 激发生命周期:评估boa代 10
2.3.4 激发生命周期:评估poa代 13
2.4 对象生命周期 17
译者序回到顶部↑
译 者 序
CORBA以其平台独立性和语言独立性,在异构、分布式环境下占据优势,它可使应用程序开发者更多地关心其本身的应用领域开发,而较少地考虑低级的分布式系统程序设计。CORBA将对象接口的定义和对象的实现分开,允许对象用不同的程序语言编程实现,以实现大规模分布式系统。
本书主要面向对CORBA已有基本了解,并希望进一步深入研究CORBA系统开发实际需求的读者,以及通过使用CORBA技术进行大规模企业级应用系统开发的程序员和设计者。
本书尽可能以CORBA规范为中心,力图实用,提供的指导和解决方案是针对大规模分布式系统开发的实际需求,并着重于使用现有的可用技术。书中论述了与建立企业级CORBA系统相关的各个方面,同时也提供了相应的一些实例。
参加本书翻译的有李师贤、郑红、吴涛、王迪、刘鸥、马壮展、李智,全书由李师贤教授审校。由于译者自身的知识局限,译文中不足之处在所难免,欢迎读者批评指正。
2000年8月
CORBA以其平台独立性和语言独立性,在异构、分布式环境下占据优势,它可使应用程序开发者更多地关心其本身的应用领域开发,而较少地考虑低级的分布式系统程序设计。CORBA将对象接口的定义和对象的实现分开,允许对象用不同的程序语言编程实现,以实现大规模分布式系统。
本书主要面向对CORBA已有基本了解,并希望进一步深入研究CORBA系统开发实际需求的读者,以及通过使用CORBA技术进行大规模企业级应用系统开发的程序员和设计者。
本书尽可能以CORBA规范为中心,力图实用,提供的指导和解决方案是针对大规模分布式系统开发的实际需求,并着重于使用现有的可用技术。书中论述了与建立企业级CORBA系统相关的各个方面,同时也提供了相应的一些实例。
参加本书翻译的有李师贤、郑红、吴涛、王迪、刘鸥、马壮展、李智,全书由李师贤教授审校。由于译者自身的知识局限,译文中不足之处在所难免,欢迎读者批评指正。
2000年8月
前言回到顶部↑
前 言
欢迎阅读《CORBA企业解决方案》。本书的主要目的是为用户提供建立真正大规模的企业级CORBA系统的指导。显然,分布式系统工程是一复杂的课题,不可能提供一个单独的、通用的模式来立即解决所有的问题。通常,并不存在“最好”的解决方案,解决方案的选择取决于很多因素─技术的和非技术的。本书基于我们三位作者在近几年中所获得的经验,这些经验来自于对世界各地的许多CORBA用户进行的培训和提供的咨询,所涉及的企业分别有制造业、金融、电信和交通。我们希望本书能够覆盖和实际项目相关的大多数主题,而且为用户提供的指导和解决方案不是抽象或学术性的,而是集中于信息系统开发的实际需求。
完成类似于本书这样的项目,即要覆盖从现实世界角度看来如此大型而又复杂的问题,会有两个普遍性的问题。第一,对于单独一个人(或即使是三个人)来说,不可能了解该领域的每一个细节,并把学术见解和面向效果的现实世界经验结合起来。第二,企业发展如此迅速,以致于很难写出一本长时间不过时的书。
最后,本书面向的是具有使用CORBA必需知识的程序员和设计者。即,读者要有自己建立CORBA系统的经验,并对事情有自己的看法。
为了向读者提供与我们及其他读者交流的机会,我们建立了一个“CORBA企业解决方案”的网站:www.middlewarehouse.com 。这个站点以布告栏的方式构建,设计为对企业级CORBA进行更深入讨论的平台。希望这个主页还能解决上面提到的两个问题:提供对各单独问题的更详细的技术探讨和最新的信息。这个网站不断更新,将变成一个与中间件和企业系统开发相关的知识源。请和作者相会于:www.middlewarehouse.com。
本书是如何组织的
本书分为五个部分,各有不同的侧重点:
?第一部分 基础。
?第二部分 核心服务。
?第三部分 数据库集成和事务处理。
欢迎阅读《CORBA企业解决方案》。本书的主要目的是为用户提供建立真正大规模的企业级CORBA系统的指导。显然,分布式系统工程是一复杂的课题,不可能提供一个单独的、通用的模式来立即解决所有的问题。通常,并不存在“最好”的解决方案,解决方案的选择取决于很多因素─技术的和非技术的。本书基于我们三位作者在近几年中所获得的经验,这些经验来自于对世界各地的许多CORBA用户进行的培训和提供的咨询,所涉及的企业分别有制造业、金融、电信和交通。我们希望本书能够覆盖和实际项目相关的大多数主题,而且为用户提供的指导和解决方案不是抽象或学术性的,而是集中于信息系统开发的实际需求。
完成类似于本书这样的项目,即要覆盖从现实世界角度看来如此大型而又复杂的问题,会有两个普遍性的问题。第一,对于单独一个人(或即使是三个人)来说,不可能了解该领域的每一个细节,并把学术见解和面向效果的现实世界经验结合起来。第二,企业发展如此迅速,以致于很难写出一本长时间不过时的书。
最后,本书面向的是具有使用CORBA必需知识的程序员和设计者。即,读者要有自己建立CORBA系统的经验,并对事情有自己的看法。
为了向读者提供与我们及其他读者交流的机会,我们建立了一个“CORBA企业解决方案”的网站:www.middlewarehouse.com 。这个站点以布告栏的方式构建,设计为对企业级CORBA进行更深入讨论的平台。希望这个主页还能解决上面提到的两个问题:提供对各单独问题的更详细的技术探讨和最新的信息。这个网站不断更新,将变成一个与中间件和企业系统开发相关的知识源。请和作者相会于:www.middlewarehouse.com。
本书是如何组织的
本书分为五个部分,各有不同的侧重点:
?第一部分 基础。
?第二部分 核心服务。
?第三部分 数据库集成和事务处理。
序言回到顶部↑
序 言
我们假定用户需要在一复杂的软硬件环境中编写应用程序,或是需要把一整套组件/应用程序集成到一灵活的企业级系统中。我们还假定用户强烈要求自己的应用程序能运行起来,或者自己的系统能够集成起来,但对于重新创建各个部件却不感兴趣。这样,用户就需要得到尽可能多的帮助,帮助的形式既可以是能购买到的可实现软件,也可以是能采用的技术。
也许这种复杂性是由于用户的应用程序/企业必须运行在分布式硬件系统上而产生的,因此必须解决网络带来的边界问题。又或许用户不得不处理由于不同的组件用不同的语言编写所引起的问题;又或许这些组件需要运行在不同的操作系统上。又或许用户(作为世界上唯一的建筑师或经理)正处理一个完全同种类的环境,但应用程序/组件必须越过不同部门或公司的边界进行访问。
如果真的出现以上情况,用户就很可能要用到对象请求代理来帮助越过这些边界—而实际上所用的代理可能就遵循着CORBA标准。使用CORBA的原因在于系统中的组件能越过这些边界进行相互通信,而用不着编写一个软件层来提供越过边界的桥梁。CORBA提出的不止是基本的通信需要,还有其他很多的内容。就像在点到点通信中,CORBA也能提供变化,如同多对多通信和存储转发一样。对象可做成安全的;对象可以存储在数据库中;数据库可以越界访问;在一单独的事务中,多个数据库可自动更新;系统可以在不同的层次上进行监控和管理;对象可以通过名字或是用户希望的属性来寻找。
那么,本书在哪些方面可以起到作用呢?分布式系统研究大概始于1980年或更早些时候,在接近二十年的时间内,我们对它的理解不断加深。这种理解实际是集中在如接口定义、安全性、实体命名、事务、通信选择、两层或三层体系结构、数据库集成、容错性、系统管理等领域。用户如果对自己系统中重要的方面有着深刻的理解,那么就能更快更好地实现该系统。本书涉及了以上的所有领域,另外,对于CORBA环境,还给出了采取什么方法比较好的实践性建议。
Dirk、Jason和Perry对这些领域有着深刻的了解。他们研究过调查结果,还担任过多个与这些问题相关项目的顾问。他们的贡献在论述了与现代系统相关的各个方面,并把这些方面依次和CORBA框架联系起来。CORBA在系统中很容易用来克服多种限制,本书描述了用户想要在应用层上用到的技术,以便最好地利用CORBA,并使自己的系统尽可能简单地实现。
CORBA的发展方向何在?早期(到90年代中期),CORBA的目标是提供跨越边界的框架。第二个阶段(到1998年),内容有所丰富(安全性、事务、多通信、数据库集成等),并且在CORBA中还集成了很多其他技术。因此,CORBA在使用了COM的环境中同样工作良好;它采纳了Java作为首要语言,并加入了其他设施以允许它在企业内使用;而且CORBA能安全地越过防火墙使用。那么往后几年的目标是什么呢?
首先,和其他技术的集成还会继续。EJB在这里很重要—或更具体地说,是在Java环境中持续加入功能设施,以允许编写多特征的客户机和服务器。CORBA和标准企业应用程序的集成也会作为有用的功能设施提供,而不是为每个应用程序编写代码。
其次,CORBA会变得越来越容易使用,现在出现的程序员生产工具就是明证。在这里一个关键领域是客户机和服务器或至少是它们中的一部分基于脚本的生成。C++和Java代码可以以这种方式产生,这就减少了人们必须编写的和应用相关的代码数量。使用工具的其他优点在于让系统管理者有更多的监控和控制设施可用。
第三,组件这个概念变得越来越重要。组件是一个对象,里面只含有业务级的代码,而没有和安全性、事务、命名等方面相关的代码。因此,一个组件可以给定不同的安全属性而不用改变对象的代码,在某种意义上,它可以“融”入不同的安全环境而不用改变它的代码,即使这些安全环境是以不同的方式实现的。类似地,组件是否是事务性的,不是由组件本身决定,而是由它所融入的环境(或容器)来决定。
我们假定用户需要在一复杂的软硬件环境中编写应用程序,或是需要把一整套组件/应用程序集成到一灵活的企业级系统中。我们还假定用户强烈要求自己的应用程序能运行起来,或者自己的系统能够集成起来,但对于重新创建各个部件却不感兴趣。这样,用户就需要得到尽可能多的帮助,帮助的形式既可以是能购买到的可实现软件,也可以是能采用的技术。
也许这种复杂性是由于用户的应用程序/企业必须运行在分布式硬件系统上而产生的,因此必须解决网络带来的边界问题。又或许用户不得不处理由于不同的组件用不同的语言编写所引起的问题;又或许这些组件需要运行在不同的操作系统上。又或许用户(作为世界上唯一的建筑师或经理)正处理一个完全同种类的环境,但应用程序/组件必须越过不同部门或公司的边界进行访问。
如果真的出现以上情况,用户就很可能要用到对象请求代理来帮助越过这些边界—而实际上所用的代理可能就遵循着CORBA标准。使用CORBA的原因在于系统中的组件能越过这些边界进行相互通信,而用不着编写一个软件层来提供越过边界的桥梁。CORBA提出的不止是基本的通信需要,还有其他很多的内容。就像在点到点通信中,CORBA也能提供变化,如同多对多通信和存储转发一样。对象可做成安全的;对象可以存储在数据库中;数据库可以越界访问;在一单独的事务中,多个数据库可自动更新;系统可以在不同的层次上进行监控和管理;对象可以通过名字或是用户希望的属性来寻找。
那么,本书在哪些方面可以起到作用呢?分布式系统研究大概始于1980年或更早些时候,在接近二十年的时间内,我们对它的理解不断加深。这种理解实际是集中在如接口定义、安全性、实体命名、事务、通信选择、两层或三层体系结构、数据库集成、容错性、系统管理等领域。用户如果对自己系统中重要的方面有着深刻的理解,那么就能更快更好地实现该系统。本书涉及了以上的所有领域,另外,对于CORBA环境,还给出了采取什么方法比较好的实践性建议。
Dirk、Jason和Perry对这些领域有着深刻的了解。他们研究过调查结果,还担任过多个与这些问题相关项目的顾问。他们的贡献在论述了与现代系统相关的各个方面,并把这些方面依次和CORBA框架联系起来。CORBA在系统中很容易用来克服多种限制,本书描述了用户想要在应用层上用到的技术,以便最好地利用CORBA,并使自己的系统尽可能简单地实现。
CORBA的发展方向何在?早期(到90年代中期),CORBA的目标是提供跨越边界的框架。第二个阶段(到1998年),内容有所丰富(安全性、事务、多通信、数据库集成等),并且在CORBA中还集成了很多其他技术。因此,CORBA在使用了COM的环境中同样工作良好;它采纳了Java作为首要语言,并加入了其他设施以允许它在企业内使用;而且CORBA能安全地越过防火墙使用。那么往后几年的目标是什么呢?
首先,和其他技术的集成还会继续。EJB在这里很重要—或更具体地说,是在Java环境中持续加入功能设施,以允许编写多特征的客户机和服务器。CORBA和标准企业应用程序的集成也会作为有用的功能设施提供,而不是为每个应用程序编写代码。
其次,CORBA会变得越来越容易使用,现在出现的程序员生产工具就是明证。在这里一个关键领域是客户机和服务器或至少是它们中的一部分基于脚本的生成。C++和Java代码可以以这种方式产生,这就减少了人们必须编写的和应用相关的代码数量。使用工具的其他优点在于让系统管理者有更多的监控和控制设施可用。
第三,组件这个概念变得越来越重要。组件是一个对象,里面只含有业务级的代码,而没有和安全性、事务、命名等方面相关的代码。因此,一个组件可以给定不同的安全属性而不用改变对象的代码,在某种意义上,它可以“融”入不同的安全环境而不用改变它的代码,即使这些安全环境是以不同的方式实现的。类似地,组件是否是事务性的,不是由组件本身决定,而是由它所融入的环境(或容器)来决定。








点击看大图





加载中...

