什么是SOA?
面向服务架构SOA(Service-Oriented Architecture)是一种架构模型和一套设计方法学,其目的是最大限度地重用应用程序中立型的服务以提高IT适应性和效率。它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。SOA的关键是“服务”的概念,W3C将服务定义为:“服务提供者完成一组工作,为服务使用者交付所需的最终结果。最终结果通常会使使用者的状态发生变化,但也可能使提供者的状态改变,或者双方都产生变化”。
为什么采用SOA?
面向服务架构(SOA)是让IT更加关注于业务流程而非底层IT基础结构,从而获得竞争优势的更高级别的应用程序开发架构。
SOA对需要使用信息技术解决关键业务问题的企业(包括希望减少冗余架构、创建跨客户和员工系统的公共业务接口的企业;需要基于角色和工作流对用户提供个性化信息的业务的企业;希望通过Internet实现跨区销售、升级销售和经由移动设备的访问来提升客户服务的组织)很有价值。
采用服务驱动型方法的企业体验着以下业务和IT好处:
面向服务架构的业务好处
效率:将业务流程从"烟囱"状的、重复的流程向维护成本较低的高度利用、共享服务应用转变。
响应:迅速适应和传送关键业务服务来满足市场需求,为客户、雇员和合作伙伴更高水准的服务。
适应性:更高效地转入转出让整个业务变得复杂性和难度更小,达到节约时间和资金的目的。
面向服务架构的IT好处
复杂性降低:基于标准的兼容性,与点到点的集成相比降低了复杂性。
重用增加:通过重用以前开发和部署的共享服务,实现了更有效的应用程序/项目开发和交付。
遗留集成:用作可重用服务的遗留应用程序降低了维护和集成的成本。
如今的服务驱动型企业都在体验着开发的高效率,服务的高可靠性和服务的高质量,以最大限度获得业务机会所带来的这些好处。
我们公司尚未SOA的实践,但是我们有强大的合作伙伴,我们的合作伙伴有SOA的实践经验,我们可以借鉴他们的实践,
下面是英国电信设计模式最佳实践——层次化的SOA架构
典型的企业SOA平台连接许多企业应用资源和用户,并且可以把企业应用资源分成服务提供者和服务消费者两种类型。可以通过把服务划分为不同的层次来得到良 好的管理效果。一个服务层次用来使后台系统(BES)资源可用,而另一个服务层次连接前端系统(FES)到SOA平台,第三个服务层次组装第一个服务层次 的基本服务并连接业务用户在一起成为复杂的复合类型服务。
类似的服务分组做法可以有效的阐述SOA平台分层管理的特点。对于每个层次来讲,都有对应的不同的技术,开发模式,测试装置,部署配置和系统管理制度等等。
SOA对开发人员的要求以及要点和难点
重点说明的是SOA 并不是一种现成的技术,而是一种架构和组织IT基础结构及业务功能的方法。SOA是一种在计算环境中设计、开发、部署 和管理离散逻辑单元(服务)的模型。这一定义 阐明了SOA的范围。 SOA要求开发人员将应用设计为服务的集合。SOA 要求开发人员跳出应用本身进行思考, 考虑现有服务的重用,或思索他们的服务如何能 够被其他项目重用。“单独的”、“独立的”、“封装 完善的”服务所具有的一个关键的好处是,可以 采用多种不同方法将它们组合成较大型的服务, 由此来实现重用。 但是,SOA并不仅仅是一种开发方法——它 还具有管理上的优点。例如,现在管理员可直接 管理开发人员所构建的相同服务,这远胜于以往 管理单个应用的方式。通过分析服务间的交互, SOA可以帮助企业了解何时以及为什么业务逻辑 被切实执行了,这使管理员或分析师能够有针对 性的优化业务流程。
如何保证SOA架构的设计?
在SOA的架构设计上Bea为我们提供了Liquid Computing for Weblogic和Bea Workshop
介绍Liquid Computing.
Liquid Computing(流动计算)是BEA构建流动企业(fluid e nterprise) 的远景,它能帮助企业将IT响应时间从几个月缩短为几分钟。流动计算(Liquid Computing)正式发布前的代号是Sierra计划,它建立在面向服务的架构(SOA)上,其最终目标是使实时的业务目标与企业的每一步变化紧密地 结合在一起,从而帮助公司成为服务驱动型企业,最终成为具备企业兼容性、主动适应性和突破性的生产力的企业。为了把流动计算(Liquid Computing)的远景变为现实,BEA正在开发一系列产品及相关计划。这些新产品和服务能够帮助企业提高响应能力并降低IT的复杂度和成本。其中, 代号为Alchemy的未来移动技术旨在让移动工作者即使离线也可以保持同在线一样的生产力。作为流动计算(Liquid Computing)远景的基本组件之一,Alchemy计划打造业内第一个通用的基于SOA的客户端平台。
在BEA WebLogic Workshop 8.1 中,构建面向服务的架构 (SOA) 目前已成为一项简单的任务。BEA 提供了一种机制,用于可视化地创建复杂的业务流程和服务。在下面的内容中,我将指导您一步一步地创建抵押代理公司的流程。希望本文能让您深入了解如何利用 WebLogic Workshop 的强大功能构建面向服务的架构(SOA)。
集成的IDE开发环境,向导模式的SOA开发环境,使得SOA开发起来更为简单,大大降低开发人员的难度