面向服务(SOA)技术架构规范
【流程管理】SOA面向服务的体系架构概述

SOA面向服务的体系架构概述SOA概述SOA——面向服务的体系结构,是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。
接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。
这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。
SOA的目标使IT系统变得更有弹性,以便更灵活、更快地响应不断改变的企业业务需求,解决软件领域一直以来存在的“如何重用软件功能”问题。
采用SOA来构建信息平台,无疑是未来的发展方向。
SOA基本特征1.可重用的服务——一个服务创建后能用于多个应用和业务流程2.松散耦合——服务请求者到服务提供者的绑定与服务之间应该是松耦合的,服务请求者不需要知道服务提供者实现的技术细节。
3.标准化的服务接口——服务交互必须是明确定义的。
Web服务描述语言(Web ServicesDescription Language,WSDL)是用于描述服务请求者所要求的绑定到服务提供者的细节。
WSDL不包括服务实现的任何技术细节。
服务请求者不知道也不关心服务究竟是由哪种程序设计语言编写的。
4.无状态的服务设计-服务应该是独立的、自包含的请求,在实现时它不需要获取从一个请求到另一个请求的信息或状态。
服务不应该依赖于其他服务的上下文和状态。
当产生依赖时,它们可以定义成通用业务流程、函数和数据模型5.基于开放标准——当前SOA的实现形式是Web 服务,基于的是公开的W3C及其他公认标准.采用第一代Web服务定义的SOAP、WSDL和UDDI以及第二代Web服务定义的WS*来实现SOA。
6.支持各种消息模式——无状态的消息、有状态的消息、等幂消息7.可从企业外部访问8.随时可用9.粗粒度的服务接口分级SOA为软件功能重用提供的解决办法①服务之间通过简单、精确定义的接口进行通信,不涉及底层编程接口和通信模型。
②粗粒度性:粗粒度服务提供一项特定的业务功能,采用粗粒度服务接口的优点在于使用者和服务层之间不必再进行多次的往复,一次往复就足够了。
soa的架构层次

SOA的架构层次面向服务的架构(SOA)是一种灵活、松耦合的系统设计方法,它将应用程序的不同功能单元(称为“服务”)通过这些服务之间定义良好的接口和契约联系起来。
这种方法使得系统中的服务可以以一种统一和通用的方式进行交互,从而实现了系统的高内聚、低耦合。
本文将深入探讨SOA的架构层次,分析其各个组成部分及其在系统设计和实现中的作用。
一、服务层服务层是SOA架构的核心,它包含了一组可复用的、粗粒度的服务。
这些服务是业务逻辑的封装,具有明确的接口定义,可以独立部署和升级。
服务层的设计需要遵循一定的原则,如服务的无状态性、服务的自治性、服务的可发现性等。
这些原则保证了服务的可靠性、可维护性和可扩展性。
二、服务注册与发现层服务注册与发现层负责服务的注册、查找和管理。
当一个新的服务被创建并部署到系统中时,它需要在服务注册中心进行注册,将自己的接口定义、访问地址等信息发布到注册中心。
其他服务或客户端可以通过服务发现机制在注册中心查找所需的服务,并获取其访问信息。
这一层为系统提供了动态的服务绑定能力,使得服务之间的依赖关系更加灵活和可扩展。
三、传输层传输层负责数据的传输和通信。
在SOA架构中,服务之间的通信通常基于开放的标准协议,如HTTP、SOAP、REST等。
这些协议保证了服务之间的互操作性和跨平台性。
传输层还需要处理诸如消息格式转换、加密解密、压缩解压缩等底层细节,以确保数据的完整性和安全性。
四、业务流程层业务流程层负责将服务组合成业务流程。
一个业务流程可能涉及多个服务的协同工作,以完成某个具体的业务目标。
业务流程层通过编排和协调这些服务,实现了业务流程的自动化和智能化。
此外,业务流程层还可以根据业务需求对服务进行动态调整和优化,以提高系统的响应速度和资源利用率。
五、表示层表示层是系统的用户界面,负责与用户进行交互。
在SOA架构中,表示层可以通过调用服务层提供的服务来获取数据并进行展示。
由于服务层提供了统一的接口和数据格式,表示层可以更加灵活地设计和实现用户界面,以满足不同用户的需求和偏好。
一个SOA架构技术概览

一个SOA架构技术概览SOA(Service-Oriented Architecture,面向服务的架构)是一种软件架构风格,它将应用程序的功能划分为可重用的服务,这些服务可以通过网络进行交互。
SOA架构的目标是实现应用程序和业务流程的松耦合。
SOA架构技术概览如下:1.服务描述:在SOA架构中,每个服务都需要有详细的描述,包括服务的名称、接口、操作、输入和输出等信息。
这些描述通常使用统一描述语言(如WSDL)来定义,以便服务提供者和服务消费者可以共享和理解服务的功能和操作。
2. 服务注册与发现:在SOA架构中,服务注册与发现非常重要。
服务提供者需要将其服务注册到服务注册中心,以便服务消费者可以在运行时动态地发现并调用服务。
常用的服务注册与发现机制包括UDDI (Universal Description, Discovery, and Integration)和Service Registry。
3. 服务组合:SOA架构中的服务是可以组合的,通过将多个服务按照特定的顺序或条件进行组合,可以创建更复杂的业务流程。
常用的服务组合技术包括BPEL(Business Process Execution Language)和ESB (Enterprise Service Bus)。
4. 服务编排:服务编排是指将多个服务按照特定的逻辑规则进行编排和调度,以实现特定的业务逻辑。
常见的服务编排技术包括业务流程管理工具(如jBPM)和规则引擎(如Drools)。
5.服务安全:由于SOA架构中的服务是通过网络进行交互的,因此服务安全是一个重要的问题。
常见的服务安全机制包括消息加密和签名、访问控制、身份验证和授权。
6.服务监控与管理:在SOA架构中,对于运行中的服务进行监控和管理是至关重要的。
常见的服务监控与管理技术包括服务性能监控、错误日志记录、故障恢复和负载均衡。
7.服务测试和部署:SOA架构中的服务需要经过充分的测试和部署,以确保其质量和可靠性。
面向服务架构的主要技术和标准

面向服务架构的主要技术和标准面向服务架构的主要技术和标准包括以下几个方面:1. SOAP(Simple Object Access Protocol):SOAP是一种基于XML的通信协议,用于在网络上进行结构化信息交换。
它定义了一套标准的消息格式和通信方式,使得不同平台和语言之间的服务可以相互通信。
2. REST(Representational State Transfer):REST是一种使用简单的HTTP协议进行通信的架构风格。
它是基于资源的概念,通过HTTP的GET、POST、PUT、DELETE等方法对资源进行操作,实现了松耦合、可扩展和可伸缩的服务调用。
3. WSDL(Web Services Description Language):WSDL是一种用于描述Web服务的XML语言。
它定义了Web服务的接口和消息格式,使得客户端可以根据WSDL文件生成与服务进行通信的代理类。
4. UDDI(Universal Description, Discovery and Integration):UDDI是一种用于描述、发现和集成Web服务的标准。
它提供了一种在分布式环境中注册和查找Web服务的方式,使得客户端可以方便地发现并调用所需的服务。
5. XML(eXtensible Markup Language):XML是一种用于描述结构化数据的标记语言。
它被广泛应用于面向服务架构中的消息交换和数据传输,通过定义可扩展的元素和属性,实现了不同系统之间的数据交互。
6. JSON(JavaScript Object Notation):JSON是一种轻量级的数据交换格式。
它以简洁的方式表示结构化数据,并支持多种编程语言。
在面向服务架构中,JSON常用于替代XML作为数据的交换格式。
7. SOA(Service-Oriented Architecture):SOA是一种面向服务的架构风格。
它通过将系统拆分成独立的服务,实现了松耦合、可复用和可组合的系统设计。
SOA面向服务架构(PPT30页)

SOA面向服务架构(PPT30页)
为什么要使用SOA
传统的架构,软件包是被编写为独立的(self-contained) 软件,即在一个完整的软件包中将许多应用程序功能整合在 一起。实现整合应用程序功能的代码通常与功能本身的代码 混合在一起。我们将这种方式称作软件设计“单一应用程序 “。与此密切相关的是,更改一部分代码将对使用该代码的代 码具有重大影响,这会造成系统的复杂性,并增加维护系统 的成本。而且还使重新使用应用程序功能变得较困难,因为 这些功能不是为了重新使用而打的包。
缺点:代码冗余 不能重用 紧耦合 成本高
SOA面向服务架构(PPT30页)
SOA面向服务架构(PPT30页)
为什么要使用SOA
SOA旨在将单个应用程序功能彼此分开,以便这些 功能可以单独用作单个的应用程序功能或“组件”。这 些组件可以用于在企业内部创建各种其他的应用程序, 或者如有需要,对外向合作伙伴公开,以便用于合作伙 伴的应用程序。
SOA优点:代码重用 松耦合 平台独立 语言无关
SOA面向服务架构(PPT30页)
SOA面向服务架构(PPT30页)
商品消费——软件服务
SOA面向服务架构(PPT30页)
SOA面向服务架构(PPT30页)
SOA工作流程
SOA面向服务架构(PPT30页)
SOA面向服务架构(PPT30页)
SOA角色
假设股票行业存在以下6个服务:
• Country() 输入参数:国家编码。输出项:国家名称和其他信息。 • YellowPages() 输入参数:公司名称;输出项:企业代码,所在国家等其他信息。 • NewYorkStock() 输入参数:公司代码,时间;输出项:该公司在纽约的股票价格 (美元)。 • LondonStock() 输入参数:公司代码,时间;输出项:该公司在伦敦的股票价格。 • USToRMB() 输入参数:美元价格,时间;输出项:对应的人民币价格。 • UKToRMB() 输入参数:英镑价格,时间;输出项:对应的人民币价格。
面向服务的架构(SOA)与微服务架构的比较与应用

面向服务的架构(SOA)与微服务架构的比较与应用引言:面向服务的架构(Service-Oriented Architecture,简称SOA)和微服务架构是当前软件开发领域中非常热门的两种架构风格。
本文将比较这两种架构,并探讨它们在实际应用中的优缺点和适用范围。
一、面向服务的架构(SOA)的概念与特点1.1 定义SOA是一种设计原则,用于构建松耦合、可重用和可组合的分布式软件系统。
它将一个应用划分为多个服务,并通过服务之间的通信实现应用功能。
1.2 特点1) 服务:SOA将应用划分为多个独立的服务,每个服务负责特定的功能。
这种服务的划分可以基于业务领域划分,也可以根据技术实现划分。
2) 松耦合:SOA通过服务之间的松耦合实现组件的独立开发和部署,一个服务的变化不会对其他服务产生影响。
3) 可重用性:SOA鼓励开发人员将通用功能封装为复用的服务,提高开发效率和系统的灵活性。
4) 可组合性:不同的服务可以通过组合实现复杂的业务逻辑,提高系统的可扩展性和灵活性。
二、微服务架构的概念与特点2.1 定义微服务架构是一种构建应用的方式,它将一个应用拆分为多个小型服务,每个服务都有自己的业务逻辑和数据库。
2.2 特点1) 小型化:每个微服务关注于特定的业务功能,代码量较少,易于理解和维护。
2) 独立部署:每个微服务可以独立部署,因此一个服务的变化不会对其他服务产生影响。
3) 弹性伸缩:由于每个服务都独立部署,可以根据需要对某些服务进行水平扩展,提高系统的性能和容错能力。
4) 多语言支持:微服务架构允许使用不同的编程语言和技术栈开发各个微服务,提供更大的灵活性。
三、SOA与微服务架构的比较3.1 比较角度一:规模和复杂性SOA适用于大型企业级系统,它将系统划分为多个较大的服务,要求统一的数据模型和通信协议,适用于复杂的企业环境。
微服务架构适用于较小规模的系统,将系统拆分为多个小型的服务,每个服务都相对独立,无需统一的数据模型和通信协议,适用于灵活的开发环境。
【01】 SOA技术概述

技术推动
计算环境包含了一组计算机、 软件平台、协议和相互联通的网 络,在该环境中,计算机之间、 软件平台之间可通过网络按照协 议实现数据交换和信息处理。
计算 环境
软件体 系结构
软件体系结构是指构成软 件系统的软件元素、软件元素 外部可见的属性以及这些软件 元素之间的关系
软件 生产方式
软件系统设 计、开发、测试、 运行、管理的理 念、原则和方法
外包零件 设计规划 设计图纸
产品设计 系统
生产部
生产计划 ERP 采购部 采购规划
外包计划
质量部 质量审核
一般供应商 可用原料 查询 可用零件 查询
SOA技术概述
(3) 频繁变化的互操作与集成需求
企业的业务是频繁变化的; 企业间的协同关系也不是固定的,随着业务流程的变化而随之变化; 企业的IT应用系统要能够快速支持这种变化的需求。
客户机:PC、工作站
PC、工作站 • Real-Time Application Assembly MS、Apple、HP 、DELL
• Rapid Deployment & Management
SOA技术概述
软件体系结构的演变
SOA技术概述
软件工程的演变
结构化设计 面向对象 面向构件 到面向服务
SOA技术概述
软件工程的演变
结构化软件生产SD E.W.Dijkstra60年代 FORTRAN/PASCAL/C 自顶向下,逐步求精 单入口单出口 顺序、循环、选择结构
面向对象软件生产OOD 70年代 SmallTalk C++、Java...... 对象、类、属性、方法
动态变化的市场环境 Business Technology
面向服务的架构(SOA)设计与实现

发展趋势
• 融入人工智能和机器学习技术,实现 智能服务 • 支持****跨平台、跨语言、跨组织的 协同开发 • 优化****服务治理和性能监控,实现 可持续发展
CREATE TOGETHER
DOCS
谢谢观看
THANK YOU FOR WATCHING
• 规划、设计、开发、测试、部署和维护 等环节 • 遵循****最佳实践和质量标准 • 持续改进和优化服务
03
SOA架构的部署与实现技术
云计算与SOA的融合
云计算
• 提供****按需分配、弹性扩展的计算资 源 • 支持****分布式计算和大数据处理 • 实现****服务化和资源化
SOA与云计算的融合
• 使用诊断工具进行故障定位和问题解决 • 分析****日志和性能数据,找出问题根 源 • 采取****相应措施,优化服务性能
SOA测试与验证最佳实践
测试与验证方法
• 使用测试框架和测试工具进行测试用例设计和执行 • 实现****测试报告和缺陷管理 • 遵循****最佳实践和质量标准
测试与验证策略
CREATE TOGETHER
DOCS
DOCS SMART CREATE
面向服务的架构(SOA)设计与实 现
01
面向服务的架构(SOA)基本概念及重要性
什么是面向服务的架构(SOA)
01
SOA是一种软件架构风格
• 强调松耦合和可重用性 • 通过服务进行组件间的通信与协 作
02
SOA是一种设计理念
• 采用****服务总线实现服务调度和消息 传递 • 实现****服务治理和性能监控 • 提高****系统可靠性和可扩展性
容器化与微服务架构在SOA中的应用
容器化
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ICS备案号:Q/CSG 中国南方电网责任有限公司企业标准面向服务的信息技术架构(SOA)框架规范中国南方电网责任有限公司发布目次前言 (III)1范围 (1)2规范性引用文件 (1)3术语与定义 (1)3.1面向服务的体系结构 (1)3.2服务 (1)3.3企业服务总线 (1)3.4企业资源规划 (1)3.5企业应用集成 (1)3.6企业信息门户 (1)3.7SOA项目 (1)4总则 (1)4.1持续发展原则 (1)4.2先进性原则 (2)4.3实用性原则 (2)4.4操作性原则 (2)5SOA架构模型 (2)5.1服务体系 (2)5.1.1服务体系设计依据 (2)5.1.2服务体系图 (2)5.1.3服务体系各层定义 (3)5.2应用体系 (4)5.3服务部署体系 (5)5.4技术标准规范体系 (6)5.4.1技术标准规范体系图 (6)5.4.2服务开发技术标准规范 (9)5.4.3服务集成技术标准规范 (13)5.5SOA架构模型特征 (14)6SOA服务设计与开发 (14)6.1服务识别 (14)6.2服务定义 (14)6.3服务设计 (16)6.3.1总体设计原则 (16)6.3.2访问服务 (16)6.3.3数据服务 (17)6.3.4业务服务 (17)6.3.5流程服务 (17)6.3.6综合服务 (17)6.3.7展现服务 (17)6.4服务实现 (18)6.4.1服务封装原则 (18)6.4.2服务封装方式 (18)7SOA服务集成 (18)I7.1企业服务总线 (18)7.2服务描述 (19)7.3服务注册/发布 (19)7.4服务发现/调用 (19)7.5服务编排 (19)7.6服务管理 (19)7.6.1管理内容 (19)7.6.2参考流程 (20)8SOA项目管理 (24)8.1项目实施方法 (24)8.2项目实施策略 (24)8.3项目实施路线 (25)8.4项目实施步骤 (26)8.4.1项目准备 (26)8.4.2项目需求分析 (27)8.4.3项目设计与实现 (27)8.5项目验收 (28)8.5.1总体要求 (28)8.5.2验收文档规范 (28)II前言随着中国南方电网有限责任公司(以下简称为南方电网公司)企业信息化应用的不断发展和信息资源的不断积累,公司在探讨与实践企业信息技术架构时认识到:多元化的信息技术架构不利于企业信息化应用的发展和企业信息资源的积累与共享。
多年来信息化建设的实践证明:不同信息技术架构造成了技术体系复杂混乱、技术标准不兼容、IT系统间互操作性差、上下信息交换不通畅、IT管理不规范等弊端。
企业的业务的不断发展变化需要多套应用系统同时支撑业务运行和管理,一个好的信息技术架构不应割裂IT与实际业务之间的联系,而是应更好、更快地适应业务的变化。
通过前期对“ERP套装软件”、专业开发+应用集成/信息门户”、及“面向服务的架构(SOA)”三种具有代表性的应用系统建设模式进行分析表明:SOA代表了应用系统建设模式及信息技术架构的发展方向,无论是ERP厂商还是应用集成/信息门户(EAI/EIP)平台厂商,都在逐步采用SOA的理念和技术。
SOA使得IT能够更好地提供业务价值,更灵活、更易于重用。
因此,南方电网公司选择SOA架构作为未来信息化建设统一的技术路线。
本规范立足于南方电网公司“十一五”信息化规划的战略发展高度,定义统一、先进与实用的面向服务的信息技术架构(以下简称:SOA架构)框架规范,以实现南方电网公司信息一体化体系中“构建南方电网公司开放的、集成的、一体化的信息化应用环境”的目标,健全南方电网公司信息化标准体系。
本规范旨在为南方电网公司统一实施SOA架构提供通用性的指导,各分、子公司可根据各自应用系统建设的实际需求,在不违背本规范原则的前提下,对其进行不同深度与广度的扩展。
本标准由中国南方电网公司信息中心提出、归口并解释。
本标准主要起草单位:南网信息中心、超高压公司、调峰调频公司、广东电网公司、广西电网公司、云南电网公司、贵州电网公司、海南电网公司。
本标准主要起草人:王志英、张建民、张诗军、蔡徽、徐兵元、萧展辉、解文艳、刘杰、朱永虎、汪浩、郭玮、陈俊、朱金所、王波、翁小云、曹建海、李小福、朱震宇本标准由中国南方电网有限责任公司标准化委员会批准。
本标准自颁发之日起实施。
III面向服务的信息技术架构(SOA)框架规范1范围本规范适用于南方电网公司基于SOA架构的应用系统开发和企业应用集成、SOA项目咨询以及SOA 项目监理。
2规范性引用文件下列文件中的条款通过本标准的引用而构成为本标准的条款。
凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本标准,但鼓励根据本标准达成协议的各方研究是否可使用这些文件的最新版本。
凡是不注日期的引用文件,其最新版本适用于本标准。
《中国南方电网公司“十一五”信息化规划》《中国南方电网公司信息分类与编码标准》《中国南方电网公司信息分类与编码标准》3术语与定义3.1面向服务的体系结构面向服务的体系结构(Service-Oriented Architecture),即SOA是包含运行环境、编程模型、架构风格和相关方法论等在内的一整套新的分布式软件系统构造方法和环境,涵盖服务的整个生命周期。
SOA以服务为核心,来实现的IT系统更灵活、更易于重用、更好(也更快)地应对变化。
3.2服务在SOA架构中,服务是最核心的抽象手段,它具有明确的功能,通常封装着业务功能或者数据。
一个服务包括接口(Interface)、契约(Contract)和实现(Implementation)三个部分。
服务的接口和契约采用中立、基于标准的方式进行定义,它独立于实现服务的硬件平台、操作系统和编程语言,这使得构建在不同系统中的服务可以以一种统一的和通用的方式进行交互。
3.3企业服务总线企业服务总线(Enterprise Service Bus) ,以下简称ESB,是一种在松散耦合的服务和应用之间标准的集成方式,提供简单、快速、基于标准的多点集成,类似硬件中的总线结构。
3.4企业资源规划企业资源规划(Enterprise Resource Planning) ,即ERP是指建立在信息技术基础上,以系统化的管理思想,为企业决策层及员工提供决策运行手段的管理平台。
狭义的ERP仅仅局限在制造业的企业资源规划方面,广义的ERP随着供需链管理(SCM)和企业业务流程重组(BPR)等管理理论的引入,实现了企业人、财、物、信息等所有的资源和产、供销等所有业务。
3.5企业应用集成企业应用集成(Enterprise Application Integration) ,即EAI是将基于各种不同平台、用不同方案建立的异构应用集成的一种方法和技术。
EAI通过建立底层结构,来联系横贯整个企业的异构系统、应用、数据源等,完成在企业内部的 ERP、CRM、SCM、数据库、数据仓库,以及其它重要的内部系统之间无缝地共享和交换数据的需要。
3.6企业信息门户企业信息门户(Enterprise Information Portal) ,即EIP是一个应用系统,它使企业能够释放存储在内部和外部的各种信息,让用户能够从单一的渠道访问其所需的个性化信息。
3.7SOA项目本规范中的SOA项目是指南方电网公司基于SOA架构的应用系统建设或集成项目。
4总则信息技术架构是指导信息化建设的技术框架,信息化应用项目的建设必须遵从这个框架的要求,以促进信息化应用项目建设的高效率、高质量、高标准和可持续发展。
南方电网公司SOA架构设计遵循下述原则:4.1持续发展原则1基于目前南方电网公司信息技术架构模型的现状,站在南方电网公司企业发展以及信息化发展的战略高度,统一南方电网公司信息技术架构模型,以实现信息化建设的高效率、高质量、高标准和可持续发展为原则。
4.2先进性原则必须坚持与世界先进技术发展水平同步,遵循相关的技术规范及标准,保证能满足目前与未来信息化建设的需求。
4.3实用性原则以重用、协作和资源共享为基础,确立信息技术架构模型和技术部署的最佳实践,为实施信息技术架构模型制定策略与方法,以利于引导信息化建设项目的实施。
4.4操作性原则综合考虑目前南方电网公司信息化建设的实际,使多元化的信息技术架构模型能逐步过渡到统一的信息技术架构模型。
5SOA架构模型参考国际结构化信息标准促进组织(OASIS)发布的SOA参考模型,结合南方电网公司信息化建设的实际,在上述总体设计原则的指导下,本章定义了南方电网公司SOA架构模型,以下从四个不同的角度描述的子模型进行说明。
5.1服务体系5.1.1服务体系设计依据(一)SOA架构的核心理念是打破传统面向各个业务领域的、僵化的垂直应用构建模式,将应用分解为可重用、松耦合、互操作的服务体系结构,通过服务的编排组合来实现业务的组合,通过服务的松耦合来满足业务变化和调整,通过服务的重用来降低软件开发的成本。
(二)南方电网公司SOA架构之服务体系采用组件化的分层结构设计思想,使其具有预制性、封装性、透明性、互操作性、通用性等特征,便于快速地组装新的应用。
上层的服务依赖于下层的服务来实现,而不需要了解下层的实现逻辑,通过服务的分层,降低服务之间的耦合度,提高可重用性。
5.1.2服务体系图南方电网公司SOA架构之服务体系建立在企业的信息资源层之上,包括但不限于下述六层:访问服务层、数据服务层、业务服务层、流程服务层、综合服务层、展现服务层。
信息资源层为上层提供应用资源(应用系统模块)与数据资源,它包括传统的封闭的应用系统、已经打包好的应用程序、业务系统数据库、数据仓库、非结构化数据等。
2图1图5.1 SOA服务体系图南方电网公司基于SOA架构的应用至少应包括数据服务层和业务服务层,为了更好地实现个性化和灵活的表现形式,通常还应包括展现服务层。
针对某些具体的应用,可以根据实际情况对六层服务体系架构进行简化与合并,例如:当只需要访问关系型数据库时,可以考虑将访问服务层与数据服务层合并;当应用系统比较简单时,可能不需要流程服务层及综合服务层。
5.1.3服务体系各层定义(一)访问服务层:访问服务层实现与底层数据资源、应用资源的通信功能,使用通用标准接口,定义整合企业信息资源(数据资源与应用资源)的各种访问服务,例如:不同类型的适配器以及专用的API等等。
访问服务屏蔽了企业信息资源(现在的或未来的)的技术和实现方式,访问服务层之上的开发者无需知道数据的位置、类型以及应用程序的编程语言等。
(二)数据服务层:数据服务层定义的服务支持把异构的、孤立的企业数据转变成集成的、双向的、可重复使用的信息资源。
数据服务通过访问服务层以统一的方式访问企业的所有数据,数据服务层之上的开发者可以集中精力处理数据的加工问题,而不必关注访问不同来源的数据的实现细节。