每天学一点!系统架构设计师之面向服务的架构(二)

3 篇文章 0 订阅
2 篇文章 0 订阅

1.SOA的发展历史
这个概念最初由Gartner公司提出(Gartner(高德纳,又译顾能公司,NYSE: IT and ITB)全球最具权威的IT研究与顾问咨询公司,成立于1979年,总部设在美国康涅狄克州斯坦福。其研究范围覆盖全部IT产业,就IT的研究、发展、评估、应用、市场等领域,为客户提供客观、公正的论证报告及市场调研报告,协助客户进行市场分析、技术选择、项目论证、投资决策。为决策者在投资风险和管理、营销策略、发展方向等重大问题上提供重要咨询建议,帮助决策者作出正确抉择。)我们不仅感叹,1979年我们连电视还没普及的时候,人家都开始研究网络架构了。由于当时的技术条件和市场的局限性,没有引起人们的广泛关注。伴随因特网的浪潮,更多企业将业务转移到因特网。因特网迅速出现了大量的基于不同平台和语言开发的web服务组件。为了能够有效对这些组件进行管理,人们迫切的需要一种可以由不同组织开发的web服务相互学习和交互,保障安全以及兼顾复用性和管理型的一种架构,SOA才重新回归到我们的视线中。
XML技术是作为SOA的萌芽阶段最具标志的代名词,它的出现让开发人员拜托了HTML语言的限制,并跨越因特网协议传输。借助XML转换语言,接收方可以很容易的解析和抽取XML的数据。XML是SOA的基石,它规定了服务之间以及服务内部数据交换的格式和结构。XSD Schemas保障了消息数据的完整性和有效性,而XSLT 是的不同的数据表达能通过Schema映射而互相通信。这也就是为什么我们在写xml文件的时候,最开头都要以Schema开始的原因。
到了2000年后,人们提出了web服务的概念,希望通过将企业对外服务封装为统一标准的web服务,实现异构系统之间的简单交互。重点来了!!!这一时期出现了三个著名的Web服务标准和规范: SOAP WSDL UDDI 。这三个标准成为web服务三剑客,极大的推动了Web服务的普及和发展.
到了今天,各大厂商协作组织共同定制SOA标准,随着SCA/SDO/WS-Policy 这是三个重量级标准的出现,SOA进入到了鼎盛的阶段。
2.SOA的参考架构
我们从书中获得了案例,IBM的Websphere 业务集成参考架构是典型的以服务为中心的企业集成架构。估计很多小伙伴也和我一样,对这个架构非常陌生。市面上主流的架构已经很难见到他的身影了,这里我们就简单了解下吧。
从百度上大致了解到,

WebSphere 是IBM 的软件平台。它包含了编写、运行和监视全天候的工业强度的随需应变 Web
应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具。WebSphere提供了可靠、灵活和健壮的软件。
WebSphere ApplicationServer 是该设施的基础,其他所有产品都在它之上运行。WebSphere Process Server 基于 WebSphere Application Server 和 WebSphere Enterprise
Service Bus,它为面向服务的体系结构
(SOA)的模块化应用程序提供了基础,并支持应用业务规则,以驱动支持业务流程的应用程序。高性能环境还使用 WebSphere
Extended Deployment作为其基础设施的一部分。其他WebSphere 产品提供了广泛的其他服务。

WebSphere 是一个模块化的平台,基于业界支持的开放标准。可以通过受信任和持久的接口,将现有资产插入
WebSphere,可以继续扩展环境。WebSphere可以在许多平台上运行,包括 Intel、Linux 和 z/OS。

WebSphere
是随需应变的电子商务时代的最主要的软件平台,可用于企业开发、部署和整合新一代的电子商务应用,如B2B,并支持从简单的网页内容发布到企业级事务处理的商业应用。WebSphere
可以创建电子商务站点,把应用扩展到联合的移动设备, 整合已有的应用并提供自动业务流程。

以服务为中心的企业集成采用“关注点分离”的方法规划企业集成中的各种元素,同时从服务视角规划每种架构元素提供的服务,以及服务如何被组合在一起完成某种类型的集成。这里多说下关注点分离,最通俗的话来说就是软件应该按照其业务来将软件本身划分成不同的部分,从而进一步降低耦合性。最基本的就是代码功能拆分,前后端分离,mvc框架都是运用这个思路产生的。
“关注点分离”具体分析点击进入

那么从服务的视角来看,企业集成的框架分为六类

一.业务逻辑服务
包括用于实现业务逻辑的服务和执行业务逻辑的能力,包括业务应用服务、业务伙伴服务、应用和信息资产。
整合已有应用:通过集成已有的应用和信息将可以在已有企业系统上实现更多增值服务。以服务为中心的企业集成通过应用和信息访问服务来实现对已有应用和信息的集成,从大的概念上来说就是通过各种适配器技术将已有系统的业务逻辑和业务数据包装成企业服务总线支持的协议和数据格式。这样可以方便的参与上层的业务流程。在WebSphere 中主要有两类访问服务,可接入服务、事件发现服务。
整合新开发的应用–业务应用服务:他可以帮助程序员开发可重用、可维护和灵活的业务逻辑组件。还可以在提供运行时的集成对业务逻辑组件的资质管理。在WebSphere 有三类业务应用服务,组件服务(为可重用的组件提供应用的运行时容器管理服务);核心服务(提供运行时的服务);接口服务(体用和其他系统集成的接口)
整合客户和业务伙伴(B2C/B2B)–伙伴服务:通过它与企业外部的B2B的集成能力,因此它需要支持多种传输协议和数据格式。在WebSphere 有提供了社区服务(支持以交易中心为主的集中式管理和以伙伴为中心的自我管理)、文档服务(支持和业务伙伴交换的文档格式)、协议服务(为文档的交互提供传输层的支持)
二.控制服务
包括实现人、流程和信息集成的服务,以及执行这些集成逻辑的能力。
数据整合–信息服务:应用系统访问企业数据和企业数据提供增值服务的主要障碍就是企业数据的分布性和异构性。因此信息服务为解决该问题,并提供对分布式数据和异构数据的透明访问。包括 联邦服务(提供将各种类型的数据聚合的能力)、复制服务(提供远程数据的本地访问能力,本地副本)、转换服务(数据源格式到目标格式的转换)、搜索服务(数据查询检索)
流程整合–流程服务:将彼此关联的业务活动组成自动化流程可以进一步提高业务活动的效率,在这一背景下流程服务应运而生,其中包括 编排服务(通过预定义的流程逻辑控制流程中业务活动的执行,并帮助业务流程从错误中恢复)、事务服务(ACID)、人工服务(将人工活动集成到流程中,交互服务)
用户访问整合–交互服务:负责将信息传递给客户,无论客户是以哪种设备接入。WebSphere 中包括了,交付服务(提供交互框架,可视化图形)、体验服务(增强用户体验)、资源服务(提供运行时交互组件的管理)
三.连接服务
通过提供企业服务总线提供分布在各个架构元素中服务间的连接性。
类似于消息中间件,特征包括描述服务的元数据和服务注册管理;在服务请求者和提供者之间传递数据;支持服务之间的动态交互;解耦服务请求者和服务提供者。这种服务将应用中时间的功能或者数据资源转化为服务请求者能以标准的方式来访问的服务。无需请求者和提供者关心具体实现的技术,只要保持接口不变,任意改动都无法相互影响。
总线结构模式简化了应用之间的集成拓扑,通过源自实践的模式,提供了基于标准的通用连接服务,是的服务请求者和服务提供者之间可以以松散耦合、动态的方式交互。
四.业务创新和优化服务
用于监控业务系统运行时服务的业务功能,并通过及时了解到的业务性能和变化,采取措施适应变化的市场。为核心提供业务时间发布、收集和关键业务指标监控能力。由公共时间框架服务(通过一个公共时间框架提供IT和业务事件的激发、存储和分类);采集服务(通过基于策略的过滤和相关性分析检测感兴趣的服务);监控服务(通过事件与监控上下文间的映射,计算和管理业务流程的关键性能指标)。说白了就是收集运行数据,利用代码或人工进行业务流程优化。
五.开发服务
贯彻整个软件开发生命周期的开发平台,从需求分析到建模、设计、开发、测试和维护等全面的工具支持。
因为企业集成涉及面很广,不仅需要开发新的应用并使其成为可以被用于企业集成的功能组件,而且需要将被包装的已有的应用和数据用于集成。其中不仅有内部集成还要有外部集成,功能和应用集成。这种复杂性需要强有力的开发工具支持,一套标准化的工具框架,能够即插即用的方式支持多家企业,才是我们想要的。
有了这套框架还不够,还需要提供和服务开发相关的技术。
用于支持以服务为中心的企业集成方法学和建模;用于服务为中心的编程模型(建模服务,设计服务,实现服务,测试服务)
六.IT服务管理
支持业务系统运行的各种基础设施管理能力或服务。为业务流程和服务提供安全高效和健康的运行环境。包括两部分:安全和目录服务(企业范围内的用户、认证和授权管理);系统管理和虚拟化服务(用于管理服务器、储存、网络和其他IT资源)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值