架构是—套构建系统的准则,通过这套准则,把—个复杂的系统划 分为一套更简单的子系统的集合,这些子系统之间保持相互独立,并与 整个系统保持一致,而且每—个子系统还可以继续细分下去,从而构成 —个企业级架构。 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回方面的 需求。要构建出的系统架构需要能满足几方面的服务水准要求:性能、 可升级性、可靠性、可用性、可扩展性、可维护性、易管理性以及安全 性。

SOA架构设计的更多相关文章

  1. 老徐FrankXuLei 受邀为花旗银行讲授《微软WCF服务分布式开发与SOA架构设计课程》

    老徐FrankXuLei 受邀为花旗银行上海研发中心讲授<微软WCF服务分布式开发与SOA架构设计课程> 受邀为花旗银行上海研发中心讲授<微软WCF服务分布式开发与SOA架构设计课程 ...

  2. 关于SOA架构设计的案例分析

    关于SOA架构设计的案例分析 面向服务的体系结构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来.它可以根据需求通过网络对松散耦合的粗粒度应 ...

  3. 企业SOA架构设计理论

    SOA简介 SOA(Service-Oriented Architecture,面向服务架构)是一种将信息系统模块化为服务的架构风格.拥有了服务之后,我们就可以迅速地将这些服务按不同方式重新组合,从而 ...

  4. SOA架构设计经验分享—架构、职责、数据一致性

    阅读目录: 1.背景介绍 2.SOA的架构层次 2.1.应用服务(原子服务) 2.2.组合服务 2.3.业务服务(编排服务) 3.SOA化的重构 3.1.保留服务空间,为了将来服务的组合 4.运用DD ...

  5. SOA架构设计(转发)

    阅读目录: 1.背景介绍 2.SOA的架构层次 2.1.应用服务(原子服务) 2.2.组合服务 2.3.业务服务(编排服务) 3.SOA化的重构 3.1.保留服务空间,为了将来服务的组合 4.运用DD ...

  6. [转]SOA架构设计经验分享—架构、职责、数据一致性

    阅读目录: 1.背景介绍 2.SOA的架构层次 2.1.应用服务(原子服务) 2.2.组合服务 2.3.业务服务(编排服务) 3.SOA化的重构 3.1.保留服务空间,为了将来服务的组合 4.运用DD ...

  7. 【转】SOA架构设计经验分享—架构、职责、数据一致性

      1.背景介绍       最近一段时间都在做系统分析和设计工作,面对的业务是典型的重量级企业应用方向.突然发现很多以往觉得很简单的问题变得没有想象的那么容易,最大的问题就 是职责如何分配.论系统架 ...

  8. SOA架构设计和相关案例分析

    一.SOA概念 1.定义: SOA,是一个组件模型,面向服务的体系架构,它将应用程序的不同服务通过这些服务之间定义良好的接口和契约联系起来,不涉及底层编程接口和通讯模型.服务层是SOA的基础,可以直接 ...

  9. SOA架构设计的案例分析

    面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和契约联系起来.接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台. ...

随机推荐

  1. JS变量和数据类型及其转化

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. navicat连接mysql查询结果中文都是?号(C#)

    记录解决方法,方便以后查看.  有几个地方需要注意: 1.连接mysql数据库的字符串最后加上Charset=utf8; 2.mysql中character_set_XX设置都为utf8,使用show ...

  3. Codeforces Round #600 (Div. 2) D。 Harmonious Graph

    #include<iostream> using namespace std ; ; int p[N]; int cnt; int find(int x) { if(p[x]!=x) p[ ...

  4. [HNOI2014] 道路堵塞 - 最短路,线段树

    对不起对不起,辣鸡蒟蒻又来用核弹打蚊子了 完全ignore了题目给出的最短路,手工搞出一个最短路,发现对答案没什么影响 所以干脆转化为经典问题:每次询问删掉一条边后的最短路 如果删掉的是非最短路边,那 ...

  5. xrdp---远程桌面连接

    xrdp is an Open Source Remote desktop Protocol server, which allows you to RDP to your Linux server ...

  6. 在多租户(容器)数据库中如何创建PDB:方法6 DBCA本地克隆PDB

    基于版本:19c (12.2.0.3) AskScuti 创建方法:DBCA静默本地克隆PDB.根据 CDB1 中的 PDB1 克隆出 CDB1 中的 PDB_CLONE 对应路径:Creating ...

  7. 2018-2019-20175334实验四《Android程序设计》实验报告

    2018-2019-20175334实验四<Android程序设计>实验报告 一.实验内容及步骤 实验四 Android程序设计-1 Android Stuidio的安装测试: 参考< ...

  8. 174. 地下城游戏(逆向DP)

    Q: 一些恶魔抓住了公主(P)并将她关在了地下城的右下角.地下城是由 M x N 个房间组成的二维网格.我们英勇的骑士(K)最初被安置在左上角的房间里,他必须穿过地下城并通过对抗恶魔来拯救公主. 骑士 ...

  9. Safari 导航栏

    目录 引子 隐藏 Safari 导航栏 显示 Safari 导航栏 iPhone 系统占比 参考资料 引子 最近在 iPhone 的 Safari 查看 h5 页面时,发现有些平台的页面向下滚动时,顶 ...

  10. 【译】写个好的 CLI 程序

    写个好的 CLI 程序 Write a Good CLI Program 译文 原文链接:https://qiita.com/tigercosmos/items/678f39b1209e60843cc ...