• 关于SOA


    关于SOA

    一、     SOA是什么

    面向服务的体系结构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。

    二、     为什么要使用SOA

    传统的架构,软件包是被编写为独立的(self-contained)软件,即在一个完整的软件包中将许多应用程序功能整合在一起。实现整合应用程序功能的代码通常与功能本身的代码混合在一起。我们将这种方式称作软件设计“单一应用程序“。与此密切相关的是,更改一部分代码将对使用该代码的代码具有重大影响,这会造成系统的复杂性,并增加维护系统的成本。而且还使重新使用应用程序功能变得较困难,因为这些功能不是为了重新使用而打的包。缺点:代码冗余,不能重用,紧耦合,成本高。

    SOA旨在将单个应用程序功能彼此分开,以便这些功能可以单独用作单个的应用程序功能或“组件”。这些组件可以用于在企业内部创建各种其他的应用程序,或者如有需要,对外向合作伙伴公开,以便用于合作伙伴的应用程序。SOA优点:代码重用,松耦合,平台独立,语言无关。

     

    三、     SOA的缺点是什么

        1. 减低了系统的性能

    2. 在向标准化过度的转换过程,增加了简介费用

    3. 很多没有太多意义的文件型信息

    4. 对商业流程的计划要求甚高

    四、     SOA的主要技术和标准

    1、XML标准

       通过XML,开发人员摆脱了HTML语言的限制,可以将任何文档转换成XML格式,然后跨越互联网协议传输。借助XSLT接受方可以很容易地解析和抽取XML的数据。这使得企业既能够将数据能够以一种统一的格式描述和交换,同时又不必负担SGML那样高的成本。事实上,XML实施成本几乎和HTML一样。第一代XML协议的可扩展性不强。在实现每一次变更之前,协议开发人员都要达成一致。并且必须修改协议版本,以便工具可以区分新版本的协议和旧版本协议,并恰当地处理XML。第二代协议使用XML名字空间解决了这一问题。XML是SOA的基石,XML规定了服务之间以及服务内部数据交换的格式和结构。XSD Schemas 保障了消息数据的完整性和有效性,而XSLT使得不同的数据表达能沟通过Schema映射而互相通信。

    2、WebService

    SOA的主流实现方式是基于Web Service和WS-*标准的。Web服务是实现SOA中服务的最主要手段,其基本的协议包括SOAP,WSDL和UDDI。

    (1) SOAP(Simple Object Access Protocal,简单对象访问协议)由微软和IBM共同制定,用于规范WEB服务标准,实现异构程序与平台间的数据交换,有助于实现大量异构程序和平台之间的互操作性,从而使存在的应用能够被广泛的用户所访问。SOAP是基于XML的协议,包括三个部分: 封套(envelope)定义了消息内容和处理的框架、一套编码规则用来表达应用定义数据类型的实例以及表达远程过程调用和响应的协定。SOAP的一个主要目标是使存在的应用能被更广泛的用户所使用。

      (2)WSDL(Web Services Description Language,Web服务描述语言)是Web Services技术重要组成部分,它将Web Services描述定义为一组服务访问端点,客户端可以通过这些服务访问端点对包含面向文档信息或面向过程调用的服务进行访问。SDL是XML描述的网络服务,基于消息机制、包含面向文本或面向过程信息的操作集合。WSDL描述了分布在Internet环境中服务操作的抽象定义接口和服务的具体实现端口,实现远程计算资源共享。

    (3)UDDI(Universal Discovery Description and Integration,通用服务发现和集成协议)是一组基于Web的注册中心的名字,这些注册中心存储描述了商业或其他实体的信息及其提供的服务的相关技术调用界面。UDDI 提供了一组基于标准的规范用于描述和发现服务,还提供了一组基于因特网的实现。

    五、           SOA体系-三大核心部件

    1、ESB(Enterprise Service Bus)企业服务总线

       ESB是传统中间件技术与XML、Web服务等技术结合的产物。ESB提供了网络中最基本的连接中枢,是构筑企业神经系统的必要元素。从功能上看,ESB提供了事件驱动和文档导向的处理模式,以及分布式的运行管理机制,它支持基于内容的路由和过滤,具备了复杂数据的传输能力,并可以提供一系列的标准接口。

    ESB的五个基本功能:

    1)服务的MetaData管理:在总线范畴内对服务的注册命名及寻址管理功能。

    2)传输服务: 必须确保通过企业总线互连的业务流程间的消息的正确交付,传输还包括基于内容的路由功能。

    3)中介:提供位置透明性的服务路由和定位服务;多种消息传递形式;支持广泛使用的传输协议。

    4)多种服务集成方式: 如JCA,Web服务,Messaging ,Adaptor等。

    5)服务和事件管理支持: 如服务调用的记录、测量和监控数据;提供事件检测、触发和分布功能;

    2、BPM(Business Process Management)业务流程管理

    所谓业务流程管理是指根据业务环境的变化,推进人与人之间、人与系统之间的整合及调整经营方法与解决方案的IT工具。BPM可以使系统更为强壮,通过BPM组件,SOA能够更好地监控它连接的系统。

    3、Portal 门户  

    门户是一个基于WEB的应用程序,它提供个性化、单点登录、不同来源内容整合及存放信息系统的表示层。 Portal是低成本的集成技术。如果企业已经有了很多信息系统,Portal可以很容易的将这些系统集成到一起,并以统一界面方式提供给用户。

    六、           SOA案例分析

    上海虹桥枢纽信息集成项目SOA应用案例分析

    1.       需要解决的问题:

           要实现“乘客快速集散,交通运转效率提高”的目标,虹桥枢纽指挥调度中心的信息 系统就成为核心应用系统之一,而它要解决的主要问题就是异构系统互连和信息协同:

          枢纽信息系统的信息主要来源于各交通方式专属系统,这需要实时收集各专属系统的信息;

          各交通方式专属系统的分别由不同厂商实现,存在不同的通讯方式和不同的数据格式;

         针对收集信息需求进行整理、分类、存储,为枢纽指挥调度系统提供决策信息提供支持,所以信息的标准化是十分必要的;

         信息的展现方式多种多样,包括采用PDP/LCD显示终端设备、查询终端设备、 WEB 和WAP 网站、WiFi 无线定位技术等。

    虹桥枢纽是面向高速发展的国际都市的新型规划,其业务模式随着实际运营也会进行调整,因此信息系统要有一定的可扩展性,以便应对需求变化。

    2.       基于SOA 的解决方案

    通过适配器连接各交通方式专属系统,以粗粒度服务的方式注册到企业服务总线上;

    建立了枢纽统一的信息标准。

    通过ESB实现了各交通方式专属系统的信息格式多样性和业务流程扩展性,能够快速适应业务的变化;

    通过门户(Portal)技术实现了多种用户访问途径。

    3.       SOA适应性分析

    虹桥枢纽信息系统建设的特点主要是:

    (1)统一协调

            统一协调枢纽指挥中心统一协调各运营管理主体的运营资源包括枢纽交通设施,但是不 直接指挥调度各运营管理主体的运营资源。

    (2)信息共享

    枢纽内各运营管理主体之间交换班次、设施状态等信息,既方便各运营管理主 体掌握其他运营管理主体的概要运营信息并用于在沿线向旅客发布,又实现运营信 息统筹处理与发布。从运营管理角度考虑,各运营管理主体信息系统之间必须交换 数据,以保证枢纽指挥中心获得所有运营管理主体的运行信息,保证一个运营管理 主体可以获得其他运营管理主体的信息,进而保证整体协调运转,能够为旅客提供 更为人性化的服务。

    (3)分块运营

    各运营管理主体分别在各自设置在枢纽核心建筑内的控制室对各块运营资源实 施指挥调度,并且与运营管理主体沿线的其他站点一同接受运营管理主体指挥中心 的统一指挥调度,同时接受枢纽指挥中心的统一协调指挥。

    (4)一致对外

    枢纽指挥中心向旅客公众提供内容一致、形式一致的公共交通信息和品质一致的设施服务。从服务旅客角度看,需要在枢纽核心建筑大多数区域内以一致的形式 向旅客提供一致的信息,而在各运营管理主体的管理区域内根据运营管理主体认为 需要的内容和形式向旅客提供个性化的信息和服务,进而达到既向旅客提供内容一 致形式一致的信息和服务又分别向旅客提供个性化的信息和服务的目标。

    4.       SOA 的实施

    (1)实施厂商

         同方软件 以开发高新软件产业为先导,以软件产业化为经营宗旨,开发面向应用的业务基础软 件平台和各个行业信息化套件,并将科研成果推向市场,形成了独特的科技成果孵化 器的技术发展模式。 同方软件在积累和沉淀同方在数字城市、电子政务、智能卡应用、电子商务以及 企业信息化基础之上,提炼出各行业信息化需求的共性,开发出我国第一款真正意义上的业务基础软件平台ezONE。

    (2)产品选择

        从SOA适应性分析可以看出,虹桥枢纽指挥调度信息系统非常适合使用ESB产品 实现SOA。选择ESB 产品时,在考虑ESB 产品功能、性能的同时,ESB 采用的技术 路线和开发框架也是相当关键,因为整合的目的是灵活应用,而应用就需要开发框架 非常好地支持快速业务实现和展现。同时,鉴于项目周期比较紧,整套平台要有很好 的学习曲线,和支持平台开发的便捷快速开发工具。

    (3)技术实现

    项目采用基于ESB 实现模式。通过 ez ESB 提供功能强大的服务中介功能,支持了 各种应用系统服务的接入,改变了原有系统间网状连接的结构,形成了星状通信基础 设施,枢纽所需的各种资源、信息、服务得到很好地监控,可以灵活地集成已有和新 建应用,很好地支撑了指挥调度中心的业务目标实现。

  • 相关阅读:
    Tomcat安装配置
    重新捡起手中的笔
    如何拥有一套自己的信用卡分销系统
    关于信用卡分销系统的简单介绍
    jQuery 基础教程(第3版) ---第十章习题答案
    jQuery 基础教程(第3版) ---第九章习题答案
    jQuery 基础教程(第3版) ---第八章习题答案
    jQuery 基础教程(第3版) ---第七章习题答案
    jQuery 基础教程(第3版) ---第六章习题答案
    jQuery 基础教程(第3版) ---第五章习题答案
  • 原文地址:https://www.cnblogs.com/wxd136/p/10964514.html
Copyright © 2020-2023  润新知