架构是—套构建系统的准则,经过这套准则,把—个复杂的系统划 分为一套更简单的子系统的集合,这些子系统之间保持相互独立,并与 整个系统保持一致,并且每—个子系统还能够继续细分下去,从而构成 —个企业级架构。 SOA是一种面向企业级服务的系统架构,简单来讲,SOA就是一种 进行系统开发的新的体系架构,在基于SOA架构的系统中,具体应用程 序的功能是由一些松耦合而且具备统一接口定义方式的组件∞rvice)组合 构靛来的,所以。基于SOA的架构也是从企业的具体需求开始构建的。 可是,SOA和其它企业架构的不一样之处就在于SOA提供的业务灵活性, 业务灵活性是指企业能对业务变动快速和有效地进行响应,而且利用业 务变动来获得竞争优点的能力。 SOA架构本质上体现了一种复合的概念,它不只为—个企业中商业 流程的组织和实现提供了一种指导模式,同时也为具体的底层service开 发提供了指导。编程
随着全球信息化的浪潮,信息化产业不断发展、延伸,已经深刻了众多的企业及我的,SOA系统架构的出现,将给信息化带来一场新的革命。
安全
纵观信息化建设与应用的历程,尽管出现过XML(标准通用标记语言的子集)、Unicode、UML等众多信息标准,可是许多异构系统之间的数据源仍然使用各自独立的数据格式、元数据以及元模型,这是信息产品提供商一直以来造成的习惯。各个相对独立的源数据集成一块儿,每每经过构建必定的数据获取与计算程序来实现,这样的作法须要花费大量工做。信息孤岛大量存在的事实,使信息化建设的ROI(投资回报率)大大下降,ETL成为集中这些异构数据的有效工具。 ETL经常使用于从源系统中提取数据,将数据转换为与目标系统相兼容的格式,而后将其装载到目标系统中。数据通过获取、转换、装载后,要产生应用价值,还需另外的数据展示工具予以实现,如此复杂的数据应用过程,一定产生高昂的应用成本。
结构化的数据管理尚可经过以上方法,予以实现其集成应用。在非结构化的内容方面,这些具备挑战性的问题使人生畏。内容管理的应用方案基于不一样的信息化应用系统,并且大部分是纵向的以组织部门为界限的。在内容管理市场中,常用来自不一样厂商的产品来提供这些解决方案。即便是同一个厂商的产品,相互之间的功能也是常常重叠,而且没法集成。
SOA既不是一种语言,也不是一种具体的技术,它是一种新的软件 系统架构模型。 SOA最主要的应用场合在于解决在Int鲰Iet环境下的不一样商业应用之 间的业务集成问题。Intemet环境区别于Intranet环境的几个特色主要是: 1.大量异构系统并存,不一样计算机硬件工做方式不一样,操做系统不一样、 编程语言也不一样; 2.大量、频繁的数据传输的速度仍然相对较缓慢而且不稳定; 3.没法完成服务(嘲而ce)的版本升级,甚至根本就没法知道互联网上 有哪些机器直接或者间接的使用某个服务。 SOA架构具备一些典型特性,主要包括松耦合性,位置透明性以及 协议无关性。松耦合性要求SOA架构中的不一样服务之间应该保持一种松 耦合的关系,即相对独立无依赖的关系;位置透明性要求SOA系统中的 全部服务对于调用者来讲都是位置透明的,每一个服务的调用者只须要知 道他们调用的是哪—个服务,但并不须要知道所调用服务的物理位置在 哪里:协议无关性要求每个服务均可以经过不一样的协议来调用。经过 SOA架构的特性,SOA架构的出现为企业系统架构提供了更加灵活的构 建方式。
SOA架构的分层模型
整个SOA架构根据不一样的功能模块分为7层
第l层:系统已经存在的程序资源,例如ERP或者CRM系统等。 第2层:组件层,在这一层中用不一样的组件把底层系统的功能封装 起床。 第3层:服务层,是SOA系统中最重要的,在这层中要用底层功能 组件来构建所须要的不一样功能的服务。SOA中的服务能够被映射成具体 系统中的任何功能模块,可是从功能性方面能够大体划分为三种类型:1. 商业服务'Cousiness矧mce)或者是商业过程(business process),这一类的服 务是一个企业能够暴露给外部用户或者合做伙伴使用的服务,好比提交 贷款申请,用户信用检查,贷款信用查询等。2.商业功能服务(business function service),这类服务会完成一些具体的商业操做,也会被更上层的 商业服务调用,大多数状况下这类服务不会暴露给外部用户直接调用, 好比检索用户帐户信息,存储用户信息等。3.技术功能服务(technical function*rvi删,这类服务主要完成一些底层的技术功能,好比日志服务 以及安全服务等。 第4层:商业流程层,在这一层中利用已经封装好的各类服务来构 建商业系统中的商业流程。 第5层:表示层,利用表示层来向用户提供用户接口服务,这一层 能够用基于portal的系统来构建。 第6层:企业服务总线(ZSB),是—个集成的环境来支持其余层的运 行。 第7层:QOS、安全管理及监控,主要为整个SOA系统提供一些辅 助的功能,例如服务质量管理,安全管理这一类的辅助功能。 (三)SOA架构中非功能性服务级别的需求分析 除了系统的业务需求,还必需要保证构建出来的系统架构可以知足 系统中的非功能性服务级;gtJ(service-level)需求以及服务质量(Q回方面的 需求。要构建出的系统架构须要能知足几方面的服务水准要求:性能、 可升级性、可靠性、可用性、可扩展性、可维护性、易管理性以及安全 性。