第二章面向服务的体系结构SOA
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二章面向服务的体系结构SOA
SOA的生命周期
第二章面向服务的体系结构SOA
SOA的生命周期
第二章面向服务的体系结构SOA
建模(Model)
建模业务流程的程度将依赖于预期实现 的深度。另外,这个程度还依赖于您在 开发团队中担任的角色。如果您是企业 架构师,您将会对实际的业务服务进行 建模。如果您是软件开发人员,您将可 能对单个服务进行建模。
第二章面向服务的体系结构SOA
集成
发现了松散耦合体系结构的优势、方便 性和易维护性后,下一步就是利用这种 灵活性通过组合服务来创建新的组合应 用程序。 它们之间的链接是预先计划的且定义良 好。
第二章面向服务的体系结构SOA
转换 IT
这个阶段涉及到对信息技术基础设施进 行转换,以便充分利用 SOA 的优势。 所有系统将转换为基于服务的应用程序, 松散耦合是其中的规范做法,而不是例 外。系统的所有组件都将根据 SOA 进行 集成和连接,IT 系统的所有部分都在 SOA 内工作。
第二章面向服务的体系结构SOA
实现单独的 Web 服务――核心组件
第二章面向服务的体系结构SOA
在第二个层次,面向服务的集成 (Service Oriented Integration),工具 转向提供发现多个服务并与其交互的方 式,以及创建 SOA 模型的基础。
第二章面向服务的体系结构SOA
面向服务的集成——核心组件
第二章面向服务的体系结构SOA
面向服务的集成——附加组件
第二章面向服务的体系结构SOA
在层次 3,企业范围内的 IT 转换,IBM 提供了各种各样的 SOA 和 Web 服务现 成产品,这样就可以支持所有的 IT 系统 功能,并提供 SOA 系统的企业范围内的 管理。
第二章面向服务的体系结构SOA
SOA 与其他技术的关系
SOA 可以与许多其他技术结合在一起使用, 然而,组件的封装和聚合在其中扮演着重要的 角色。如前所述,SOA 可以是一个简单对象、 复杂对象、对象的集合、包含许多对象的流程、 包含其他流程的流程,甚至还可以是输出单一 结果的应用程序的整体集合。在服务之外,它 可以看作是单个实体,但是在其自身中,它可 以具有任何级别的复杂性(如果必要的话)。 出于性能方面的考虑,大多数 SOA 服务并没 有下降到单一对象的粒度,并且更适合于大中 型组件。
什么是SOA?
第二章面向服务的体系结构SOA
SOA的历史
1996年,Gartner最早提出SOA。2002 年12月,Gartner认为SOA是“现代应用 开发领域最重要的课题”,还预计到 2008年,SOA将成为占有绝对优势的软 件工程实践方法,主流企业现在就应该 在理解和应用SOA开发技能方面进行投 资。
第二章面向服务的体系 结构SOA
2020/12/10
第二章面向服务的体系结构SOA
SOA
1
市场趋势
2
什么是SOA
3
SOA的生命周期
4
如何实施SOA
5
案例:SOA在金融行业的应用
第二章面向服务的体系结构SOA
“为了顺利运作,企业必须具有灵活性, 必须具有灵活的IT基础设施。很多公司 都在通过基于面向服务的架构(SOA) 对系统进行整合来获得协调统一的IT和 业务灵活性。”
第二章面向服务的体系结构SOA
ESB
企业服务总线(Enterprise Service Bus, ESB),它使用许多可能的消息传递协 议来负责适当的控制、流甚至还可能是 服务之间所有消息的传输。 ESB 本身可以是单个引擎,甚至还可以 是由许多同级和下级 ESB 组成的分布式 系统,这些 ESB 一起工作,以保持 SOA 系统的运行。
第二章面向服务的体系结构SOA
SOA中的三个角色
Service Registry
Find
Publish
Service Requester
Bind
Service Provider
第二章面向服务的体系结构SOA
SOA的三种操作
发布(publish) 查找(find) 绑定(bind)
定义了SOA的角色之 间的合约
第二章面向服务的体系结构SOA
SOA 服务和 Web 服务之间的区别
SOA 概念并没有确切地定义服务具体如 何交互,而仅仅定义了服务如何相互理 解以及如何交互。其中的区别也就是定 义如何执行流程的战略与如何执行流程 的战术之间的区别。 Web 服务在需要交互的服务之间如何传 递消息有具体的指导原则;从战术上实 现 SOA 模型是通过 HTTP 传递的 SOAP 消息中最常见的 SOA 模型。
IBM软件集团副总裁 Sandy Carter
第二章面向服务的体系结构SOA
市场趋势
最近一项调查称,80%的财富500强企业 表示在大概两年的时间内会转变一次他 们的业务模式,而业务模式的成功改变 很大程度上取决于其信息系统对快速演 变的商业环境的适应能力,因为大概一 半受访公司表示,这项转变会受到僵硬 的信息系统的牵制。
管理(Manage)
部署后,需要从 IT 和业务两个角度对您 的系统进行管理和监视。在“管理”步 骤中收集的信息用于帮助实时地了解业 务流程,从而能更好地进行业务决策, 并将信息反馈回生命周期,以进行持续 的流程改进工作。
第二章面向服务的体系结构SOA
管理(Manage)
在管理中,需要监视和优化系统,发现 和纠正效率低下的情况和存在的问题。 由于 SOA 是一个迭代过程,因此,在此 步骤中,不仅要找出技术体系结构中有 待改进之处,而且还要找出业务体系结 构中有待改进之处。
第二章面向服务的体系结构SOA
IBM 的什么工具和产品可用于 SOA?
第二章面向服务的体系结构SOA
在第一个用于实现独立 Web 服务 (Implementing Individual Web services) 的 SOA 采用层次中,主要用于帮助开发 人员创建和操作比较简单的 Web 服务。
第二章面向服务的体系结构SOA
SOA 与其他技术的关系
SOA 和 Web 服务是独立于编程语言的, 但 Java 是主要的开发语言之一。可以使 用定义良好的 Java 接口以及各种协议丰 富的 Java 实现为正在构建这个模型的开 发人员提供了优势。
第二章面向服务的体系结构SOA
SOA 与其他技术的关系
第二章面向服务的体系结构SOA
构建服务
集成
转换 IT
转换业务
SOA的采用阶段包括构建服务、集成、转换 IT和转换业务。
第二章面向服务的体系结构SOA
构建服务
在此阶段,服务构建将更多地关注解决 特定的问题,而不是对企业现有系统进 行转换。IT 部门将构建一些新服务,或 许会将一些现有应用程序转换为一组基 于 Web 的服务。 它们之间的链接将根据需要提供,而不 是源自整个体系结构的要求。
第二章面向服务的体系结构SOA
组装(Assemble)
在建模中,已经确定了需要何种类型的 服务以及它们将访问何种类型的数据。 已经存在某种形式的实现这些服务或访 问该类数据所需的一些软件。“组装” 步骤将要找到已经存在的功能,并为其 添加服务支持。
第二章面向服务的体系结构SOA
部署(Deploy)
SOA 与 Web 的另一个重要的关系是自 主计算和网格计算的概念。自主计算的 概念应用于管理分布式服务体系结构的 范围,具体来说,就是帮助维护策略和 服务级协议以及 SOA 系统的总稳定性。
第二章面向服务的体系结构SOA
SOA 与其他技术的关系
另外,网格计算可以以两个级别与 SOA 系统一起使用。网格是分布式计算的一 种形式,它利用分布式特性和服务之间 的交互来为 SOA 应用程序提供计算支持。 在这种情况下,网格起到了框架的作用, 其中实现了一些或所有单独的服务。因 此,SOA 应用程序可以是网格服务的消 费者。
第二章面向服务的体系结构SOA
转换业务
在 SOA 成熟的最后一个阶段,业务与 SOA 完全集成,达到了这样一个程度: 所有合适的业务活动都被视为服务,可 以最终在技术体系结构中对其进行建模、 分析和实例化。
第二章面向服务的体系结构SOA
SOA的切入点 实施SOA可以从两个方面进入,一是以 业务为中心,二是以IT为重点。
第二章面向服务的体系结构SOA
W3C将服务定义为:“服务提供者完成 一组工作,为服务使用者交付所需的最 终结果。最终结果通常会使使用者的状 态发生变化,但也可能使提供者的状态 改变,或者双方都产生变化”。
第二章面向服务的体系结构SOA
SOA不是一种语言,也不是一种具体的 技术而是一种软件系统架构,它尝试给 出在特定环境下推荐采用的一种架构, 从这个角度上来说,它更像一种模式 (Pattern)。
第二章面向服务的体系结构SOA
市场趋势
十年前,解决灵活性问题的方法是企业 应用集成(EIA),在主机端运行经过整 合的软件。 但是新的商业过程往往跨越多个组织或 需要复杂的分析和协作 ,这一方法已越 来越难于适应日新月异的商业环境 。
第二章面向服务的体系结构SOA
市场趋势 新的解决方案不仅需要提供高效的商业 推动力,更需要是能组建未来业务模式 灵活的模块。客户机/服务器时代必然转 向SOA这一新的潮流。
第二章面向服务的体系结构SOA
市场趋势
公司都在努力将IT系统环境转为以服务 为导向的架构(SOA),以支持安装各 种软件来有效交换数据,从而降低创建 和维护界面的成本。业界分析公司 Gartner估计,到2008年,60%以上的企 业将在创建基础软件应用和业务流程时, 将SOA作为“指导原则”
第二章面向服务的体系结构SOA
第二章面向服务的体系结构SOA
构成 SOA 的技术
SOA 本身是应该如何将软件组织在一起 的抽象概念。它依赖于用 XML 和 Web 服务实现并以软件的形式存在的更加具 体的观念和技术。此外,它还需要安全 性、策略ห้องสมุดไป่ตู้理、可靠消息传递以及会计 系统的支持,从而有效地工作。您还可 以通过分布式事务处理和分布式软件状 态管理来进一步地改善它
第二章面向服务的体系结构SOA
可以用面向服务的体系结构做什么 业务的水平改变 内部改变 垂直改变
第二章面向服务的体系结构SOA
可以用面向服务的体系结构做什么
改变和 SOA 系统适应改变的能力是最重 要的部分。对于开发人员来说,这样的 改变无论是在他们工作的范围之内还是 在他们工作的范围之外都有可能发生, 这取决于是否有改变需要知道接口是如 何定义的以及它们相互之间如何进行交 互。与开发人员不同的是,架构师的作 用就是引起对 SOA 模型大的改变。
第二章面向服务的体系结构SOA
SOA是一种架构模型和一套设计方法学, 其目的是最大限度地重用应用程序中立 型的服务以提高IT适应性和效率。它可 以根据需求通过网络对松散耦合的粗粒 度应用组件进行分布式部署、组合和使 用。 服务层是SOA的基础,可以直接被应用 调用,从而有效控制系统中与软件代理 交互的人为依赖性。
进行了建模和组装后,要将组成 SOA 的 资产部署到安全的集成环境中。 此环境本身提供专门化的服务,用于集 成业务中涉及的人员、流程和信息。 此外,部署工作还需要满足业务的性能 和可用性需求,并提供足够的灵活性, 以便吸纳新服务(并使旧服务退役), 而不会对整个系统造成大的影响。
第二章面向服务的体系结构SOA
第二章面向服务的体系结构SOA
控制(Governance)
控制对所有生命周期阶段起到巩固支撑 作用,为整个 SOA 系统提供指导,并有 助于了解系统全貌。它提供指导和控制, 帮助服务提供者和使用者避免遇到意外 情况。
第二章面向服务的体系结构SOA
如何实施SOA
第二章面向服务的体系结构SOA
SOA 使用户可以构建、部署和整合这些 服务,且无需依赖应用程序及其运行计 算平台,从而提高业务流程的灵活性。 这种业务灵活性可使企业加快发展速度, 降低总体拥有成本,改善对及时、准确 信息的访问。SOA 有助于实现更多的资 产重用、更轻松的管理和更快的开发与 部署。
第二章面向服务的体系结构SOA
服务是位置透明的
服务的封装
服务之间的松耦合度
SOA的特征
服务的重用
服务是自治的功能实体
服务的互操作
第二章面向服务的体系结构SOA
SOA中的三个角色
1
服务申请者( Service Requester)
2
服务提供者( Service Provider )
3
服务注册器( Service Registry )
SOA的生命周期
第二章面向服务的体系结构SOA
SOA的生命周期
第二章面向服务的体系结构SOA
建模(Model)
建模业务流程的程度将依赖于预期实现 的深度。另外,这个程度还依赖于您在 开发团队中担任的角色。如果您是企业 架构师,您将会对实际的业务服务进行 建模。如果您是软件开发人员,您将可 能对单个服务进行建模。
第二章面向服务的体系结构SOA
集成
发现了松散耦合体系结构的优势、方便 性和易维护性后,下一步就是利用这种 灵活性通过组合服务来创建新的组合应 用程序。 它们之间的链接是预先计划的且定义良 好。
第二章面向服务的体系结构SOA
转换 IT
这个阶段涉及到对信息技术基础设施进 行转换,以便充分利用 SOA 的优势。 所有系统将转换为基于服务的应用程序, 松散耦合是其中的规范做法,而不是例 外。系统的所有组件都将根据 SOA 进行 集成和连接,IT 系统的所有部分都在 SOA 内工作。
第二章面向服务的体系结构SOA
实现单独的 Web 服务――核心组件
第二章面向服务的体系结构SOA
在第二个层次,面向服务的集成 (Service Oriented Integration),工具 转向提供发现多个服务并与其交互的方 式,以及创建 SOA 模型的基础。
第二章面向服务的体系结构SOA
面向服务的集成——核心组件
第二章面向服务的体系结构SOA
面向服务的集成——附加组件
第二章面向服务的体系结构SOA
在层次 3,企业范围内的 IT 转换,IBM 提供了各种各样的 SOA 和 Web 服务现 成产品,这样就可以支持所有的 IT 系统 功能,并提供 SOA 系统的企业范围内的 管理。
第二章面向服务的体系结构SOA
SOA 与其他技术的关系
SOA 可以与许多其他技术结合在一起使用, 然而,组件的封装和聚合在其中扮演着重要的 角色。如前所述,SOA 可以是一个简单对象、 复杂对象、对象的集合、包含许多对象的流程、 包含其他流程的流程,甚至还可以是输出单一 结果的应用程序的整体集合。在服务之外,它 可以看作是单个实体,但是在其自身中,它可 以具有任何级别的复杂性(如果必要的话)。 出于性能方面的考虑,大多数 SOA 服务并没 有下降到单一对象的粒度,并且更适合于大中 型组件。
什么是SOA?
第二章面向服务的体系结构SOA
SOA的历史
1996年,Gartner最早提出SOA。2002 年12月,Gartner认为SOA是“现代应用 开发领域最重要的课题”,还预计到 2008年,SOA将成为占有绝对优势的软 件工程实践方法,主流企业现在就应该 在理解和应用SOA开发技能方面进行投 资。
第二章面向服务的体系 结构SOA
2020/12/10
第二章面向服务的体系结构SOA
SOA
1
市场趋势
2
什么是SOA
3
SOA的生命周期
4
如何实施SOA
5
案例:SOA在金融行业的应用
第二章面向服务的体系结构SOA
“为了顺利运作,企业必须具有灵活性, 必须具有灵活的IT基础设施。很多公司 都在通过基于面向服务的架构(SOA) 对系统进行整合来获得协调统一的IT和 业务灵活性。”
第二章面向服务的体系结构SOA
ESB
企业服务总线(Enterprise Service Bus, ESB),它使用许多可能的消息传递协 议来负责适当的控制、流甚至还可能是 服务之间所有消息的传输。 ESB 本身可以是单个引擎,甚至还可以 是由许多同级和下级 ESB 组成的分布式 系统,这些 ESB 一起工作,以保持 SOA 系统的运行。
第二章面向服务的体系结构SOA
SOA中的三个角色
Service Registry
Find
Publish
Service Requester
Bind
Service Provider
第二章面向服务的体系结构SOA
SOA的三种操作
发布(publish) 查找(find) 绑定(bind)
定义了SOA的角色之 间的合约
第二章面向服务的体系结构SOA
SOA 服务和 Web 服务之间的区别
SOA 概念并没有确切地定义服务具体如 何交互,而仅仅定义了服务如何相互理 解以及如何交互。其中的区别也就是定 义如何执行流程的战略与如何执行流程 的战术之间的区别。 Web 服务在需要交互的服务之间如何传 递消息有具体的指导原则;从战术上实 现 SOA 模型是通过 HTTP 传递的 SOAP 消息中最常见的 SOA 模型。
IBM软件集团副总裁 Sandy Carter
第二章面向服务的体系结构SOA
市场趋势
最近一项调查称,80%的财富500强企业 表示在大概两年的时间内会转变一次他 们的业务模式,而业务模式的成功改变 很大程度上取决于其信息系统对快速演 变的商业环境的适应能力,因为大概一 半受访公司表示,这项转变会受到僵硬 的信息系统的牵制。
管理(Manage)
部署后,需要从 IT 和业务两个角度对您 的系统进行管理和监视。在“管理”步 骤中收集的信息用于帮助实时地了解业 务流程,从而能更好地进行业务决策, 并将信息反馈回生命周期,以进行持续 的流程改进工作。
第二章面向服务的体系结构SOA
管理(Manage)
在管理中,需要监视和优化系统,发现 和纠正效率低下的情况和存在的问题。 由于 SOA 是一个迭代过程,因此,在此 步骤中,不仅要找出技术体系结构中有 待改进之处,而且还要找出业务体系结 构中有待改进之处。
第二章面向服务的体系结构SOA
IBM 的什么工具和产品可用于 SOA?
第二章面向服务的体系结构SOA
在第一个用于实现独立 Web 服务 (Implementing Individual Web services) 的 SOA 采用层次中,主要用于帮助开发 人员创建和操作比较简单的 Web 服务。
第二章面向服务的体系结构SOA
SOA 与其他技术的关系
SOA 和 Web 服务是独立于编程语言的, 但 Java 是主要的开发语言之一。可以使 用定义良好的 Java 接口以及各种协议丰 富的 Java 实现为正在构建这个模型的开 发人员提供了优势。
第二章面向服务的体系结构SOA
SOA 与其他技术的关系
第二章面向服务的体系结构SOA
构建服务
集成
转换 IT
转换业务
SOA的采用阶段包括构建服务、集成、转换 IT和转换业务。
第二章面向服务的体系结构SOA
构建服务
在此阶段,服务构建将更多地关注解决 特定的问题,而不是对企业现有系统进 行转换。IT 部门将构建一些新服务,或 许会将一些现有应用程序转换为一组基 于 Web 的服务。 它们之间的链接将根据需要提供,而不 是源自整个体系结构的要求。
第二章面向服务的体系结构SOA
组装(Assemble)
在建模中,已经确定了需要何种类型的 服务以及它们将访问何种类型的数据。 已经存在某种形式的实现这些服务或访 问该类数据所需的一些软件。“组装” 步骤将要找到已经存在的功能,并为其 添加服务支持。
第二章面向服务的体系结构SOA
部署(Deploy)
SOA 与 Web 的另一个重要的关系是自 主计算和网格计算的概念。自主计算的 概念应用于管理分布式服务体系结构的 范围,具体来说,就是帮助维护策略和 服务级协议以及 SOA 系统的总稳定性。
第二章面向服务的体系结构SOA
SOA 与其他技术的关系
另外,网格计算可以以两个级别与 SOA 系统一起使用。网格是分布式计算的一 种形式,它利用分布式特性和服务之间 的交互来为 SOA 应用程序提供计算支持。 在这种情况下,网格起到了框架的作用, 其中实现了一些或所有单独的服务。因 此,SOA 应用程序可以是网格服务的消 费者。
第二章面向服务的体系结构SOA
转换业务
在 SOA 成熟的最后一个阶段,业务与 SOA 完全集成,达到了这样一个程度: 所有合适的业务活动都被视为服务,可 以最终在技术体系结构中对其进行建模、 分析和实例化。
第二章面向服务的体系结构SOA
SOA的切入点 实施SOA可以从两个方面进入,一是以 业务为中心,二是以IT为重点。
第二章面向服务的体系结构SOA
W3C将服务定义为:“服务提供者完成 一组工作,为服务使用者交付所需的最 终结果。最终结果通常会使使用者的状 态发生变化,但也可能使提供者的状态 改变,或者双方都产生变化”。
第二章面向服务的体系结构SOA
SOA不是一种语言,也不是一种具体的 技术而是一种软件系统架构,它尝试给 出在特定环境下推荐采用的一种架构, 从这个角度上来说,它更像一种模式 (Pattern)。
第二章面向服务的体系结构SOA
市场趋势
十年前,解决灵活性问题的方法是企业 应用集成(EIA),在主机端运行经过整 合的软件。 但是新的商业过程往往跨越多个组织或 需要复杂的分析和协作 ,这一方法已越 来越难于适应日新月异的商业环境 。
第二章面向服务的体系结构SOA
市场趋势 新的解决方案不仅需要提供高效的商业 推动力,更需要是能组建未来业务模式 灵活的模块。客户机/服务器时代必然转 向SOA这一新的潮流。
第二章面向服务的体系结构SOA
市场趋势
公司都在努力将IT系统环境转为以服务 为导向的架构(SOA),以支持安装各 种软件来有效交换数据,从而降低创建 和维护界面的成本。业界分析公司 Gartner估计,到2008年,60%以上的企 业将在创建基础软件应用和业务流程时, 将SOA作为“指导原则”
第二章面向服务的体系结构SOA
第二章面向服务的体系结构SOA
构成 SOA 的技术
SOA 本身是应该如何将软件组织在一起 的抽象概念。它依赖于用 XML 和 Web 服务实现并以软件的形式存在的更加具 体的观念和技术。此外,它还需要安全 性、策略ห้องสมุดไป่ตู้理、可靠消息传递以及会计 系统的支持,从而有效地工作。您还可 以通过分布式事务处理和分布式软件状 态管理来进一步地改善它
第二章面向服务的体系结构SOA
可以用面向服务的体系结构做什么 业务的水平改变 内部改变 垂直改变
第二章面向服务的体系结构SOA
可以用面向服务的体系结构做什么
改变和 SOA 系统适应改变的能力是最重 要的部分。对于开发人员来说,这样的 改变无论是在他们工作的范围之内还是 在他们工作的范围之外都有可能发生, 这取决于是否有改变需要知道接口是如 何定义的以及它们相互之间如何进行交 互。与开发人员不同的是,架构师的作 用就是引起对 SOA 模型大的改变。
第二章面向服务的体系结构SOA
SOA是一种架构模型和一套设计方法学, 其目的是最大限度地重用应用程序中立 型的服务以提高IT适应性和效率。它可 以根据需求通过网络对松散耦合的粗粒 度应用组件进行分布式部署、组合和使 用。 服务层是SOA的基础,可以直接被应用 调用,从而有效控制系统中与软件代理 交互的人为依赖性。
进行了建模和组装后,要将组成 SOA 的 资产部署到安全的集成环境中。 此环境本身提供专门化的服务,用于集 成业务中涉及的人员、流程和信息。 此外,部署工作还需要满足业务的性能 和可用性需求,并提供足够的灵活性, 以便吸纳新服务(并使旧服务退役), 而不会对整个系统造成大的影响。
第二章面向服务的体系结构SOA
第二章面向服务的体系结构SOA
控制(Governance)
控制对所有生命周期阶段起到巩固支撑 作用,为整个 SOA 系统提供指导,并有 助于了解系统全貌。它提供指导和控制, 帮助服务提供者和使用者避免遇到意外 情况。
第二章面向服务的体系结构SOA
如何实施SOA
第二章面向服务的体系结构SOA
SOA 使用户可以构建、部署和整合这些 服务,且无需依赖应用程序及其运行计 算平台,从而提高业务流程的灵活性。 这种业务灵活性可使企业加快发展速度, 降低总体拥有成本,改善对及时、准确 信息的访问。SOA 有助于实现更多的资 产重用、更轻松的管理和更快的开发与 部署。
第二章面向服务的体系结构SOA
服务是位置透明的
服务的封装
服务之间的松耦合度
SOA的特征
服务的重用
服务是自治的功能实体
服务的互操作
第二章面向服务的体系结构SOA
SOA中的三个角色
1
服务申请者( Service Requester)
2
服务提供者( Service Provider )
3
服务注册器( Service Registry )