




免费预览已结束,剩余33页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件学院课程设计报告题目全称: 平台化软件开发支撑平台研究 学生学号: 姓名: 指导老师: 指导老师评语: 签字: 课程设计成绩:设计过程表现设计报告质量总分目录一、关于soa的基本理解31.1 面向服务的体系结构(soa)概述31.2 soa的发展历史及认证机构31.3 面向服务的体系结构做用31. 4构成 soa 的技术31. 5 soa 与其他技术的关系31.6 构建 soa 系统3二、对ibm websphere的研究32.1 websphere介绍32.2 websphere安装32.3 websphere数据32.4 websphere应用服务器32.5 was管理配置3三、行业发展状况33.1 soa行业发展状况33.2 ibm的websphere行业发展状况33.3 国内soa技术发展状况33.4 对soa技术的发展展望33.5 现在国内soa发展面临的挑战3一、关于soa的基本理解1.1 面向服务的体系结构(soa)概述面向服务的体系结构(service-oriented architecture,soa)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。这种具有中立的接口定义(没有强制绑定到特定的实现上)的特征称为服务之间的松耦合。松耦合系统的好处有两点,一点是它的灵活性,另一点是,当组成整个应用程序的每个服务的内部结构和实现逐渐地发生改变时,它能够继续存在。而另一方面,紧耦合意味着应用程序的不同组件之间的接口与其功能和结构是紧密相连的,因而当需要对部分或整个应用程序进行某种形式的更改时,它们就显得非常脆弱。对松耦合的系统的需要来源于业务应用程序需要根据业务的需要变得更加灵活,以适应不断变化的环境,比如经常改变的政策、业务级别、业务重点、合作伙伴关系、行业地位以及其他与业务有关的因素,这些因素甚至会影响业务的性质。我们称能够灵活地适应环境变化的业务为按需(on demand)业务,在按需业务中,一旦需要,就可以对完成或执行任务的方式进行必要的更改。虽然面向服务的体系结构不是一个新鲜事物,但它却是更传统的面向对象的模型的替代模型,面向对象的模型是紧耦合的,已经存在二十多年了。虽然基于 soa 的系统并不排除使用面向对象的设计来构建单个服务,但是其整体设计却是面向服务的。由于它考虑到了系统内的对象,所以虽然 soa 是基于对象的,但是作为一个整体,它却不是面向对象的。不同之处在于接口本身。soa 系统原型的一个典型例子是通用对象请求代理体系结构(common object request broker architecture,corba),它已经出现很长时间了,其定义的概念与 soa 相似。然而,现在的 soa 已经有所不同了,因为它依赖于一些更新的进展,这些进展是以可扩展标记语言(extensible markup language,xml)为基础的。通过使用基于 xml 的语言(称为 web 服务描述语言(web services definition language,wsdl)来描述接口,服务已经转到更动态且更灵活的接口系统中,非以前 corba 中的接口描述语言(interface definition language,idl)可比了。web 服务并不是实现 soa 的惟一方式。前面刚讲的 corba 是另一种方式,这样就有了面向消息的中间件(message-oriented middleware)系统,比如 ibm 的 mqseries。但是为了建立体系结构模型,您所需要的并不只是服务描述。您需要定义整个应用程序如何在服务之间执行其工作流。您尤其需要找到业务的操作和业务中所使用的软件的操作之间的转换点。因此,soa 应该能够将业务的商业流程与它们的技术流程联系起来,并且映射这两者之间的关系。例如,给供应商付款的操作是商业流程,而更新您的零件数据库,以包括进新供应的货物却是技术流程。因而,工作流还可以在 soa 的设计中扮演重要的角色。此外,动态业务的工作流不仅可以包括部门之间的操作,甚至还可以包括与不为您控制的外部合作伙伴进行的操作。因此,为了提高效率,您需要定义应该如何得知服务之间的关系的策略,这种策略常常采用服务级协定和操作策略的形式。 最后,所有这些都必须处于一个信任和可靠的环境之中,以同预期的一样根据约定的条款来执行流程。因此,安全、信任和可靠的消息传递应该在任何 soa 中都起着重要的作用。1.2 soa的发展历史及认证机构2007年将有三个重量级的标准问世,它们目前都属于规范级别。它们就是sca、sdo、ws-policy。sca和sdo构成了soa组件开发的核心,而ws-policy则成为soa组件间安全通讯的标准,其作用类似于安全套接层在浏览器与服务器通讯中的重用。事实上,ws-policy的基本原理与ssl是一致的。 今后标准开发将具有一个共同的特点,就是标准与soa架构的协调性。也就是说,无论是已有的标准还是正在开发的标准,都必须符合soa架构的要求,同时要考虑单个标准与其它soa标准之间的协调一致。 2007年将会有许多soa的规范升级为标准。sca和sdo计划于2007年由oasis审核通过,而ws-policy也将于2007年8月正式成为w3c标准。 基于市场的强劲需求,各标准化组织将继续加大在制定soa相关标准上的投入力度,标准的制定和发布周期将大大缩短。比如对ws-policy,w3c制定了精密的时间表。目前ws-policy的发布时间表是这样安排的,2007年3月发布候选推荐版本(candidate recommendation drafts),2007年7月发布提议推荐版本(proposed recommendation drafts),2007年8月发布w3c推荐版本(w3c recommendations)。w3c历来以严谨和审慎著称,发布一个标准平均需要3至5年的时间。但就ws-policy而言,从2006年4月 ibm和微软公司将ws-policy规范提交给w3c算起,按照目前的时间表,整个标准发布周期仅为16个月。1.3 面向服务的体系结构做用对 soa 的需要来源于需要使业务 it 系统变得更加灵活,以适应业务中的改变。通过允许强定义的关系和依然灵活的特定实现,it 系统既可以利用现有系统的功能,又可以准备在以后做一些改变来满足它们之间交互的需要。下面举一个具体的例子。一个服装零售组织拥有 500 家国际连锁店,它们常常需要更改设计来赶上时尚的潮流。这可能意味着不仅需要更改样式和颜色,甚至还可能需要更换布料、制造商和可交付的产品。如果零售商和制造商之间的系统不兼容,那么从一个供应商到另一个供应商的更换可能就是一个非常复杂的软件流程。通过利用 wsdl 接口在操作方面的灵活性,每个公司都可以将它们的现有系统保持现状,而仅仅匹配 wsdl 接口并制订新的服务级协定,这样就不必完全重构它们的软件系统了。这是业务的水平改变,也就是说,它们改变的是合作伙伴,而所有的业务操作基本上都保持不变。这里,业务接口可以作少许改变,而内部操作却不需要改变,之所以这样做,仅仅是为了能够与外部合作伙伴一起工作。另一种形式是内部改变,在这种改变中,零售组织现在决定它还将把连锁零售商店内的一些地方出租给专卖流行衣服的小商店,这可以看作是采用店中店(store-in-store)的业务模型。这里,虽然公司的大多数业务操作都保持不变,但是它们现在需要新的内部软件来处理这样的出租安排。尽管在内部软件系统可以承受全面的检修,但是它们需要在这样做的同时不会对与现有的供应商系统的交互产生大的影响。在这种情况下,soa 模型保持原封不动,而内部实现却发生了变化。虽然可以将新的方面添加到 soa 模型中来加入新的出租安排的职责,但是正常的零售管理系统继续如往常一样。为了延续内部改变的观念,it 经理可能会发现,软件的新配置还可以以另外的一种方式加以使用,比如出租粘贴海报的地方以供广告之用。这里,新的业务提议是通过在新的设计中重用灵活的 soa 模型得出的。这是来自 soa 模型的新成果,并且还是一个新的机会,而这样的新机会在以前可能是不会有的。垂直改变也是可能的,在这种改变中,零售商从销售他们自己的服装完全转变到专门通过店中店模型出租地方。如果垂直改变完全从最底层开始的话,就会带来 soa 模型结构的显著改变,与之一起改变的还可能有新的系统、软件、流程以及关系。在这种情况下,soa 模型的好处是它从业务操作和流程的角度考虑问题而不是从应用程序和程序的角度考虑问题,这使得业务管理可以根据业务的操作清楚地确定什么需要添加、修改或删除。然后可以将软件系统构造为适合业务处理的方式,而不是在许多现有的软件平台上常常看到的其他方式。正如您可以看到的,在这里,改变和 soa 系统适应改变的能力是最重要的部分。对于开发人员来说,这样的改变无论是在他们工作的范围之内还是在他们工作的范围之外都有可能发生,这取决于是否有改变需要知道接口是如何定义的以及它们相互之间如何进行交互。与开发人员不同的是,架构师的作用就是引起对 soa 模型大的改变。这种分工,就是让开发人员集中精力于创建作为服务定义的功能单元,而让架构师和建模人员集中精力于如何将这些单元适当地组织在一起,它已经有十多年的历史了,通常用统一建模语言(universal modeling language,uml),并且描述成模型驱动的体系结构(model-driven architecture,mda)。1. 4构成 soa 的技术soa 本身是应该如何将软件组织在一起的抽象概念。它依赖于用 xml 和 web 服务实现并以软件的形式存在的更加具体的观念和技术。此外,它还需要安全性、策略管理、可靠消息传递以及会计系统的支持,从而有效地工作。您还可以通过分布式事务处理和分布式软件状态管理来进一步地改善它。soa 服务和 web 服务之间的区别在于设计。soa 概念并没有确切地定义服务具体如何交互,而仅仅定义了服务如何相互理解以及如何交互。其中的区别也就是定义如何执行流程的战略与如何执行流程的战术之间的区别。而另一方面,web 服务在需要交互的服务之间如何传递消息有具体的指导原则;从战术上实现 soa 模型是通过 http 传递的 soap 消息中最常见的 soa 模型。因而,从本质上讲,web 是实现 soa 的具体方式之一。尽管我们觉得 web 服务是实现 soa 的最好方式,但是 soa 并不局限于 web 服务。其他使用 wsdl 直接实现服务接口并且通过 xml 消息进行通信的协议也可以包括在 soa 之中。正如在别处指出的,corba 和 ibm 的 mq 系统通过使用能够处理 wsdl 的新特征也可以参与到 soa 中来。如果两个服务需要交换数据,那么它们还会需要使用相同的消息传递协议,但是数据接口允许相同的信息交换。既为了建立所有这些信息的适当控制,又为了应用安全性、策略、可靠性以及会计方面的要求,在 soa 体系结构的框架中加入了一个新的软件对象。这个对象就是企业服务总线(enterprise service bus,esb),它使用许多可能的消息传递协议来负责适当的控制、流甚至还可能是服务之间所有消息的传输。虽然 esb 并不是绝对必需的,但它却是在 soa 中正确管理您的业务流程至关重要的组件。esb 本身可以是单个引擎,甚至还可以是由许多同级和下级 esb 组成的分布式系统,这些 esb 一起工作,以保持 soa 系统的运行。在概念上,它是从早期比如消息队列和分布式事务计算这些计算机科学概念所建立的存储转发机制发展而来的。从开发人员的角度来说,他们使用的工具必须知道 soa 的能力,并允许开发人员有效地使用 soa 对象。这将设计 soa 模型、开发服务和服务对象以及测试 soa 应用程序这些过程包括进来并组成一个整体。因而,开发人员的工作必须为面向服务的应用程序设计/开发(service-oriented application design/development,soad)做好准备。1. 5 soa 与其他技术的关系soa 可以与许多其他技术结合在一起使用,然而,组件的封装和聚合在其中扮演着重要的角色。如前所述,soa 可以是一个简单对象、复杂对象、对象的集合、包含许多对象的流程、包含其他流程的流程,甚至还可以是输出单一结果的应用程序的整体集合。在服务之外,它可以看作是单个实体,但是在其自身中,它可以具有任何级别的复杂性(如果必要的话)。出于性能方面的考虑,大多数 soa 服务并没有下降到单一对象的粒度,并且更适合于大中型组件。除了可能离不开 xml 和 wsdl 之外,soa 并不是特定于语言的。可以用任何编程语言来实现服务,只要这种编程语言可以生成服务并且可以与 wsdl 结合在一起使用就可以了。soap 本身并不是绝对需要的,但它是通用的消息传递系统。因此,可以使用几乎任何一种编程语言和支持 wsdl 的平台来实现 soa 中的成员服务。基于通用对象请求代理体系结构(common object broker request architecture,corba)的应用程序有许多组件必须连接到 soa 中。虽然 corba 中的接口描述语言(interface description language,idl)在概念上类似于 wsdl,但它不是严格的,因而首先需要将其映射到 wsdl。另外,需要使用更高级的 soa 协议(比如用于流程和策略管理的协议),而不是 corba 中的类似的概念。请记住,这是 corba 组件(表示为服务)需要与 soa 服务交互的情况;在 corba 模型中,所有的独立子集仍然可以像以前一样工作。由对象管理组(object management group)提出并在许多 ibm rational 产品中得以实现的模型驱动体系结构在一个更抽象的层次上与 soa 的概念具有很强的相关性。mda 基于这样的概念,任何软件流程都可以定义为模型甚至是元模型(即模型的模型),然后可以将这些模型和元模型转换成应用程序的实际组件。因此,mda 创建了一个模型,这个模型先编译成软件应用程序,而软件应用程序接着又编译成可执行程序,这样就可以在平台上运行了。mda 并不区分服务和对象这两个概念,但是它确实允许模型由其他子集模型本身组成,这类似于 bpel(soa 的一个核心组件)中的流程聚合的概念。soa 和 web 服务是独立于编程语言的,但 java 是主要的开发语言之一。可以使用定义良好的 java 接口以及各种协议丰富的 java 实现为正在构建这个模型的开发人员提供了优势。java 在此担当了开发每个服务的功能、管理数据对象和与其他在逻辑上封装在服务内的对象进行交互的角色。soa 与 web 的另一个重要的关系是自主计算和网格计算的概念。自主计算的概念应用于管理分布式服务体系结构的范围,具体来说,就是帮助维护策略和服务级协议以及 soa 系统的总稳定性。另外,网格计算可以以两个级别与 soa 系统一起使用。网格是分布式计算的一种形式,它利用分布式特性和服务之间的交互来为 soa 应用程序提供计算支持。在这种情况下,网格起到了框架的作用,其中实现了一些或所有单独的服务。因此,soa 应用程序可以是网格服务的消费者。在另一方面,网格本身也可以构建在 soa 之上。在这种情况下,每个操作系统服务都是构成整个 soa 应用程序的成员,而 soa 应用程序就是网格本身。因此,单独的网格组件既可以使用 web 服务进行通信,又可以以 soa 的方式进行交互。总而言之,网格系统可以是 soa 本身,也可以提供服务来在其上构建应用程序级 soa 模型。1.6 构建 soa 系统利用 soa 的好处不仅是一个软件开发流程,而且还是一个业务开发流程。采用 soa 有四个层次,您的实现可以跨越从创建特定的软件服务到将您的业务模型全面转换到按需系统的过程。要获得进一步的信息,您应该阅读这一部分的末尾列出的文章“the four levels of soa adoption”。第一个层次是最简单的,因为它只需创建单独的服务。在这一部分列出的“soa 新手入门”中对此进行了详细解释,并且提供了更多的资源。在第二个层次中,您不仅可以创建服务,而且可以开始将业务功能集成到 soa 中。这涉及多个层次的集成,其中包括应用程序集成、信息集成、流程集成和整个系统集成。migrating to a service-oriented architecture 是一篇重要的文章,介绍了这个层次中的问题。第三个层次涉及将您的企业 it 基础设施转换到 soa 模型,而采用 soa 的第四个层次集中于转换您的业务模型,以使之成为按需就绪的模型。从 it 专业人员的角度来看(与业务层相比),要创建 soa 应用程序,您通常将经历四个阶段:构建、部署、使用和管理。在构建阶段中,您可以定义业务模型或流程、软件模型和 soa 模型。之后,您就可以创建一组服务,这组服务可以与已发布的通用接口一起重用。在部署阶段,您提取创建的服务,并把它们放在一个可执行、可管理的环境之中。在使用阶段,您根据前面所讲的 soa 和软件模型来装配应用程序,并且测试其软件质量以及非功能性需求,比如性能、可伸缩性等等。应用程序现在已经准备完毕并且可用于用户。最后的管理阶段是一个长期的过程,在这个阶段中,您可以监控并管理安全性和使用,以及在许多与您可能已经为 soa 制订好的服务级协定或策略相对应的方面比较其性能。这些是 soa 的生命周期的概念阶段。为了使对应于这些阶段的实际工作角色具体化,有许多角色需要加入到 soa 应用程序的创建之中。这些角色可能从事相同的工作,也可能跨多个团队成员甚至多个团队。在 rational unified process(rup)中所划分的角色非常好地表达了角色概念。rup 角色包括项目经理、分析员、架构师、建模人员、开发人员、测试人员以及部署和操作人员。soa 几乎完全照搬了这种角色划分方法,惟一不同之处在于,soa 建模人员角色的工作是提取概念性软件模型,并且根据 it 基础设施的 soa 模型和资源来对其进行测试。开发人员角色还可以包括二级角色像装配人员(在使用阶段),装配人员的角色是提取单独的服务,并且根据定义好的模型构建实际的 soa 应用程序。不管是显式的还是隐式的,这些角色都存在于支持 soa 的企业之中。二、对ibm websphere的研究2.1 websphere介绍websphere是一套完整的电子商务平台,在此平台上websphere提供了一系列基于统一的基础平台、完全基于开放标准的相关产品组件,其特征是:1) 基于标准; 2) 以服务器为中心; 3) 可伸缩; 4) 能利用已有的核心系统; 5) 可快速部署和易用; 6) 易管理。websphere是ibm的一套软件产品,包括websphere应用服务器,websphere studio和 websphere performance pack。还有其他一些产品加入进来做为补充和扩展websphere studio,一个web站点开发和设计工具包,包括项目管理,java servlet代码生成器,html写作工具,各种script的编制工具,以及java代码(beans和servlets)的开发工具。websphere应用服务器提供三个等级的版本,它们是: 标准版(standard edition),是整个应用服务器家族的基础,提供从电子商务网站的建构、发布 到管理能力。标准版提供了开放、标准的平台和工具,以加速向电子商务的迁移。新加入的db2universaldatabase5.2 支持,使开发者能够设计更强大有效的应用。websphere应用服务器标准版v1.1已经面世。包 括servlet运行时引擎(runtimeengine),高性能的数据库连接程序(提供预联接,会话和状态管理的 应用服务,以及支持xml(extensiblemark-uplanguage)文档结构. 高级版(advanced edition),在标准版本的基础上,又增加了对安全性和交易处理能力的强化支持。连接已有的 数据库系统和基于主机的交易系统。并提供了复杂的工具以简化分布式组件应用的开发. 企业版(enterprise edition),提供了一个高可靠性的解决方案,能够将电子商务应用移植进关键性的企业环 境,起到平衡现有it系统的作用。它组合了ibm享誉世界的交易环境txseries,和componentbroker,ibm的一个支持 完全的分布式对象访问和商务处理连接能力的产品。所有现在运行在txseries或componentbroker上的应用将在 webshpere企业版中得到完全支持。 ibmwebsphere performance pack,包括enetwork dispatcher,web traffice express 代理服务器和afs分布式文件系统。让isp(internet service provider)和公司it(information technology)专家降低 web服务器拥塞,提高信息可获取性,改进服务器性能。其技术优势: 1) 安全、可伸缩、具有弹性的应用程序基础架构,这些基础架构是实现面向服务架构 (soa) 所需要的。 2) 100%地支持业界的开放性标准包括java/j2ee, xml, ldap, corba,wml等等 。 3) 借助于一套简单的工具和界面,快速容易地构建和部署可重用的应用程序服务。 4) 在可靠、可伸缩、高度可用的环境中运行服务,以确保不因为应用程序宕机时间而失去业务机会。 5) 借助于具有弹性、基于标准的安全基础架构(此基础架构会移除易受攻击的威胁,同时最大限度地提高开发人员生产力),保证应用程序和数据的安全,提供了端到端(end-to-end)的安全解决方案 。 6)借助于基于标准的消息传递和最新的 web 服务标准,重用软件资产并扩展其使用范围。 7)借助于面向管理和监视的功能强大、易用的工具,轻松管理应用程序。 8)跨最广泛的业界平台快速安全地进行扩展。 9)支持完整的 j2ee 1.4 编程模型和扩展,包括 servlet、jsp、ejb 和 web 服务。 其产品优势:面向服务架构的构建块:当今的 websphere application server 跨所有配置交付了面向服务架构。通过使用基于标准的消息传递和最新的 web 服务标准重用现有 it 资产,这些产品允许企业提高投资回报和降低总体拥有成本。这就会降低成本、加速创造价值的进程和提高业务灵活性。 安全的最佳资源利用率:websphere application server 为企业提供安全的动态平台。借助于 websphere application 的伸缩能力和安全特性,企业能够使用更少的资源完成更多的工作。 随需应变的基础设施:websphere application server 提供当今企业所需的健壮、灵活的环境。借助于面向任务关键型应用程序的几乎连续的正常运行时间,企业能够事实上避免失去业务机会。 快速开发和部署:借助于增强的开发和部署能力,websphere application server 支持快速的创造价值进程。借助于支持易用性和高度开箱即用性能的特性,企业能够加速创造价值的进程,并充分利用现有技术技能。 2.2 websphere安装除了上面基本的软硬件条件之外,安装websphere应用服务器之前还要确认环境的几个配置问题: 1 一般地,websphere应用服务器需要您作为 root 用户(unix/linux系统)或 administrator 组(windows系统)的一部分进行安装。 2 磁盘空间的分配 在考虑硬盘空间分配的时候要周全一些,尤其是在一些不能动态分配磁盘空间的系统(比如solaris)上。如果是在生产环境上安装websphere应用服务器,一般要从以下几个方面来计算要预留的空间. websphere应用服务器自身占用空间。这个空间一般在400m左右,不同的系统平台略有异。如果websphere的部署管理器(deployment manager)也安装在同一台服务器上,则还要加上300m左右的空间. 如果web服务器也安装在同一台服务器上,则要算上它的空间。websphere应用服务器中带ibm http服务器一般占用50m左右的空间。 用户发布到websphere应用服务器上所有应用程序的占用空间。这个大小与实际应用相关,而且不同应用可以差别很大. 系统日志的占用空间。这里日志主要是指websphere应用服务器的日志。如果有web服务器则还要考虑web服务器的日志空间。日志空间的估算要结合系统对日志的配置情况。如果日志配置没有设置好,多大的空间都有可能耗尽。在实际项目中如果有客户没有关闭web服务器的访问日志,因而导致几天之内web服务器就生成一个超过1g的日志文件。这么大的日志文件,不但耗费空间,而且影响性能。websphere应用服务器可以设置日志件的大小和保存的文件数量,从而可以估算出其需要空间。3端口有没有冲突? websphere应用服务器缺省占用的端口包括:管理控制台端口9090,管理控制台安全端口9043,http传输端口9080,https传输端口9443,soap通信端口8880(在网络部署版这个端口是8879)等。如果系统中已有应用占用了这些端口,那么应用服务器启动的时候就会报告端口冲突的错误。一般我们可以用netstat命令来查看系统端口的使用情况。 4服务器的主机名 根据实际经验,我们推荐用户在安装websphere应用服务器之前配置主机名。可以通过hostname命令来查看当前系统的主机名。如果没有配置,则到hosts文件中添加相应的条目。 5用户名和用户组的建立 websphere应用服务器中内置了一个基于websphere mq的jms服务器。在unix/linux平台上安装的时候,如果选择了完全安装或在定制安装的时候选择了安装嵌入式消息传递,那么就要在安装开始前先创建两个用户组mqm和mqbrkrs和一个用户mqm。而且需要将用户mqm和root添加到mqm组,还要将root添加到mqbrkrs组。2.3 websphere数据1. 为什么要使用数据源? 建立一个数据库连接是一种比较耗时的操作,连接池可改进任何需要连接的应用程序(特别是基于 web 的应用程序,web 用户的连接和断开更为频繁)的响应时间。 连接池的实现,在客户端调用 close()方法的时候实际上并不关闭连接,而是把连接返回到一个可重用连接的连接池中给其它客户端使用。这样就避免了任何重复打开和关闭数据库连接造成的开销,并且允许大量的客户端分享相对较少的数据库连接,从而提高数据库操作的性能。 为了使用应用服务器提供的连接池功能,我们需要先定义相应的数据源。数据源在websphere应用服务器中作为资源存在,因此可以统一通过jndi来查询它们。 使用数据源的代码片断示例 : try javax.naming.initialcontext ctx = new javax.naming.initialcontext();javax.sql.datasource ds = (javax.sql.datasource)ctx.lookup(jdbc/dsname);java.sql.connection con = ds.getconnection(); catch(javax.naming.namingexception e1) system.err.println(naming-exception: + e1.getmessage(); catch (java.sql.sqlexception e2) system.err.println(naming-exception: + e2.getmessage(); 2.websphere应用服务器中数据源所处的位置 很多人在刚开始配置websphere应用服务器数据源时对j2c认证别名很不习惯,觉得jdbc的东西怎么会与j2c扯上关系。我们知道基于j2ee的web应用在与后台eis(企业信息系统)集成的过程中,根据eis的不同主要有三种连接方式,分别是jdbc,jca/j2c和jms。从理论上讲,jdbc驱动程序是可能归纳成一种特殊的jca连接器,只不过这个连接器后面恰好连接着关系型数据库。3.在websphere应用服务器中配置数据源 首先要确认所用的数据库是支持jdbc2.0的,并确保我们的操作系统环境设置为支持 jdbc 2.0。这是使用 websphere应用服务器创建的数据源所必需的。这一点在使用udb db2 7.2的时候尤其要注意。 要确定使用哪个数据源:数据源v4.0还是 v5.0 数据源。 数据源v4.0是使用 websphere 旧连接管理器体系结构的 websphere 4.x 中的数据源,所有的 ejb1.x 模块都必须使用此数据源。 websphere应用服务器5.x提供对 v4.0 的 jdbc 连接管理器模型的支持,使得 j2ee 1.2 应用程序能够不经改变地运行。was 5.x 也支持j2ee 1.3的应用, j2ee 1.3 应用程序内的 ejb 2.0 模块,web 2.3模块需要使用 v5.0的jdbc 连接管理器。 创建 jdbc 提供程序。jdbc提供程序指的是jdbc驱动程序的类型及其相应的驱动程序实现java包。 创建数据源。数据源是在提供特定 jdbc 驱动程序实现类的 jdbc 提供程序下创建的。 绑定资源引用。j2ee 1.3标准推荐使用数据源的引用而不是直接使用数据源的名称。 测试连接。websphere应用服务器5.0.x及5.1提供了数据源配置页面上提供了测试数据源连接的测试按钮。2.4 websphere应用服务器 ibm websphere应用服务器(简称was)是一个web 应用服务器,它提供了增强的servlet api和servlet管理工具,并集成了jsp技术和数据库连接技术websphere application server(was)基本特征:websphere应用服务器使您能够为servlet 的开发实现 “一次写成,各处使用”的目的。该产品包括一个基于 java 的 servlet 引擎,独立于 web 服务器和它所基于的操作系统。websphere应用服务器提供了服务器插件的选项,与大多数流行的应用程序设计接口(api)兼容。所支持的 web 服务器有: 1、ibm http 服务器 2、apache server 3、domino 4、lotus domino go webserver 5、netscape enterprise server 6、netscape fasttrack server 7、microsoft internet information server除了 servlet 引擎及插件外,websphere应用服务器还提供: 1. javasoft java servlet api 实现,以及这些 api 的扩展和附加。 2. 示例和文档,示例 servlet 和 web 站点应用程序演示了简单和高级技术。联机和可打印文档供您 快速入门,并帮助掌握服务器高级功能的使用演示基本类及其扩展的示例应用程序。 3. websphere应用服务器的管理器,使用图形界面,易于: (1) 为装入本地和远程的 servlet 设置选项 (2) 设置初始化参数 (3) 管理 servlet (4) 指定 servlet 别名 (5) 创建 servlet 链和过滤 (6) 启用轻量级目录访问协议(ldap)目录支持 (7) 记录 servlet 消息 (8) 启用 jvm 调试 (9) 监控 websphere应用服务器 使用的资源 (10) 监控已装入 servlet、活动 servlet 会话和 jdbc 连接 (11) 控错误、事件、异常情况和日志输出 (12) 创建转储和数据快照 (13) 动态地启用和禁用跟踪 4. 缓存和再使用与 jdbc-从属数据库连接的连接管理功能。当一个 servlet 需要数据库连接时,它 可从可用连接的缓冲池获得,从而消除了为每个请求打开一个新连接的所需花费的系统开销。 5. 附加的 java 类,遵循 javabeans 规范,允许程序员访问 jdbc-从属数据库。当隐藏使用关系数据库的复杂度时,这些数据访问 bean 可提供增强功能。它们可用于可视集成开发环境中。 6. jsp的动态页面内容支持。jsp 技术使您能够通过服务器端脚本生成动态 web 页面。其结果是将 呈示逻辑(例如,定义 web 站点结构和外观的 html 代码)从业务逻辑(例如,访问数据库以获得要显示在 web 站点上的信息的 java 编码信息)中分隔出来。灵活性方面,jsp 文件可包括任何直接插入的 java 的组合: 标记、ncsa标记和javabean 2.5 was管理配置1、启动 websphere应用服务器的管理器 要启动 websphere应用服务器的管理器 ,必须先将websphere服务器启动,然后在web 浏览器中输入 url:http:/localhost:9090/admin 进入was的控制台 管理器启动并显示登录页面。若是首次登录至管理器,请使用 admin作为登录用户标识符。单击“确定”。2、使用 websphere应用服务器的管理器 管理器左边的浏览区域允许: 为不同 websphere应用服务器组件定制设置、配置 servlet 和设置别名及过滤、建立和维护安全性、收集和监控 websphere应用服务器、连接和servlet的数据 (1) 服务器 “应用程序服务器”:是提供运行企业应用程序所需服务的服务器。页面列出单元中的应用程序服务器和应用程序服务器的节点。 节点 :指定应用程序服务器的节点名。 系统默认情况下的服务器为server1,我们可以根据我们的项目实际情况,新增应用程序的服务器 应用程序1、“企业应用程序”列出了本服务器中已经安装的应用程序的名称以及应用程序的当前状态,并可能对其应用程序进行相应的一系列管理。这里说的应用程序名称:指定已安装(或已部署)应用程序的名称。应用程序名称在单元内必须是唯一的,并且不能包含对象名中不允许的字符。 状态:表明应用程序服务器上部署的应用程序是已启动、已停止还是不可用的。 注:实际上,具有不可用的状态的应用程序也许在运行,不可用状态是因为运行管理控制台的服务器不能与运行应用程序的服务器通信。2、“安装新的应用程序”是指将应用程序发布到websphere服务器上。(1)路径:指定到企业应用程序的 .ear、.jar 或 .war 文件的全限定路径。 如果浏览器和应用程序文件在同一台机器上(无论服务器是否也在该机器上),则使用本地路径。在应用程序安装期间,应用程序文件通常从运行浏览器的客户机上载到部署它们的运行管理控制台的服务器上。在这种情况下,运行管理控制台的 web 浏览器用于选择上载到服务器的 ear、war 或 jar 模块。然而在一些情况下,应用程序文件驻留在单元中任意节点的文件系统上。要使应用程序服务器安装这些文件,使用服务器路径选项。您也可以使用此选项指定一个已经在运行应用程序服务器的机器上驻留的应用程序文件。例如,在 windows nt 上该字段值可以是c:websphereappserverinstallableappspbchk.war。如果您正在安装独立 war 模块,那么您也必须指定上下文根。(2)上下文根:指定 web 应用程序(war)的上下文根。此字段仅用于安装独立 war 文件。上下文根与定义的 servlet 映射(来自 war 文件)进行组合,组成用户输入的访问该 servlet 的完整 url。例如,如果上下文根是 /pbchk, servlet 映射是 myservlet则 url 是http:/host:port/pbchk/ myservlet 。(3)生成缺省绑定:指定是否生成缺省绑定。如果在复选框中做出了复选标记,那么应用程序中任何未完成的绑定都以缺省值填充。现有绑定将不改变。 3.资源“jdbc 提供程序 ”:是指已安装应用程序使用 jdbc 提供程序从数据库访问数据。“数据源”:应用程序使用数据源从数据库访问数据。数据源是在提供特定 jdbc 驱动程序实现类的 jdbc 提供程序下创建的。因为前面我们已经对数据源做了介绍,在这里就不再对它做介绍了。“jndi 名称 ”:指定 java 命名与目录接口(jndi)名称。分布式计算环境经常、使用命名和目录服务来获取共享组件和资源。命名和目录服务将名称与位置、服务、信息和资源关联起来。命名服务提供名称到对象映射。目录服务提供对象的信息和定位那些对象必需的搜索工具。有很多命名和目录服务实现,它们的接口也各不相同。jndi 提供用于访问各种命名和目录服务的公共接口。 例如,您可使用名称 jndi/db2/pbchk。 “组件受管认证别名 ”:此别名用于运行时的数据库认证。 如果资源认证(res-auth)设置为应用程序,则在“组件管理的认证别名”中设置别名。如果未设置此字段,而的数据库要求用于获取连接的用户标识和密码,则在运行时期间接收到异常。如果您的数据库(例如 cloudscape)不支持用户标识和密码,则不要在“组件管理的认证别名”或“容器管理的认证别名”字段中设置别名。否则,您在系统日志中会看到警告消息,表明用户和密码不是有效属性。此消息只是一个警告消息,因此数据源的创建成功。 “容器管理的认证别名 ”:此别名用于运行时的数据库认证。如果 res-auth 设置为容器,则设置“容器管理的认证别名”。如果您未设置此字段,而您的数据库要求用于获取连接的用户标识和密码,则您在运行时期间接收到异常。如果您的数据库(例如 cloudscape)不支持用户标识和密码,则不要在“组件管理的认证别名”或“容器管理的认证别名”字段中设置别名。否则,您在系统日志中会看到警告消息,表明用户和密码不是有效属性。此消息只是一个警告消息,因此数据源的创建成功。 “映射配置别名 ” :从安全性 jaas 配置面板选择合适的 jaas 登录配置以映射用户身份和凭证到资源主体和凭证,它是打开到后端服务器连接必需的。defaultprincipalmapping jaas 配置映射认证别名到用户标识和密码。还可定义和使用其它映射配置。 三、行业发展状况3.1 soa行业发展状况如果专家的预测准确,基于soa架构(面向服务的架构)的中间件产品将使企业在信息化上的投资产生更好的回报,改变中间件产业的格局,并将很快在it业获得广泛应用 zapthink调研公司在最近发表的一份报告中预测,到2006年,基于soa架构(面向服务的架构)的中间件产品将成为网络化商业系统的主要设计思路。gartner集团的分析师也指出,今年,soa架构下的中间件产品将进入主流应用之中。现在随着网络技术的发展,企业在信息化建设中产生了大量为满足产品或服务需要的“软件组件”,如:erp、crm、oa、cad等一系列、电子商务和电子政务软件组件,但其间却往往缺少关联和通讯,导致这些组件成为了一个个“孤岛”,但这些组件恰恰又是企业不能放弃的重要投资。而基于soa架构的中间件产品的出现,则使企业在需要改变it系统时的灵活性大为增加。gartner集团的分析师罗伊表示,soa架构定义了搭建企业软件架构的一种新方法,它的出现使所有应用在交换数据和处理过程中,不需要考虑应用软件是用什么编程语言开发的或在什么操作系统下运行。在这种模式下,一个应用或应用的一部分其实是一种服务,其他的应用和客户都可以在无需编写大量代码的情况下使用这些服务,这一切都使一些大企业或在地理上分布范围比较广的开发队伍能够更好地合作,因为这些soa架构下的中间件业务模块都能够被重新配置或以新方式优化以满足新的需求。zapthink公司称,面向服务的架构对软件开发厂商也非常有利。尽管没有人能够估计出具体的数字,但zapthink公司预测,面向服务架构的市场规模到2010年将达到980亿美元,年增长率达7%。3.2 ibm的websphere行业发展状况ibm 的websphere是基于互联网的电子商务应用的理想集成和开发环境,可以使企业
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 吉林省长春市汽车经济技术开发区第六中学2024-2025学年高三三校联合测试物理试题试卷含解析
- 集成电路(IC)卡专用芯片项目安全风险评价报告
- 成都锦城学院《能源与动力专业导论》2023-2024学年第二学期期末试卷
- 内蒙古工业职业学院《会展商务英语》2023-2024学年第一学期期末试卷
- 重庆城市科技学院《道路与桥梁发展新技术》2023-2024学年第一学期期末试卷
- 河南推拿职业学院《新闻摄影技巧(实践)》2023-2024学年第二学期期末试卷
- 湖南铁路科技职业技术学院《汽车构造双语》2023-2024学年第二学期期末试卷
- 同德县2025届数学五年级第二学期期末达标检测模拟试题含答案
- 山东理工职业学院《城市地下空间规划》2023-2024学年第一学期期末试卷
- 河南工程学院《人类学英文文献导读》2023-2024学年第一学期期末试卷
- 2025年全国爱卫生日健康教育宣传主题班会课件
- 中学生春季传染病预防知识
- (一模)南京市、盐城市2025届高三年级第一次模拟考试历史试卷(含官方答案)
- 降低留置针静脉炎发生率持续质量改进课件
- 汽车吊检测保养记录
- 市政工程安全台账表
- 航天模型的设计、制作与比赛课件
- 高考倒计时60天课件
- 幼儿园绘本故事:《十二生肖》 课件
- 公司组织架构图(可编辑模版)
- 《环境化学》(第二版)全书教学课件
评论
0/150
提交评论