SOA中文名字:面向服务的架构,是一个组件模型,它将应用程序的不一样功能单元(称为服务)进行拆分,并经过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操做系统和编程语言。这使得构建在各类各样的系统中的服务能够以一种统一和通用的方式进行交互。html
SOA概述:编程
SOA 是一种在计算环境中设计、开发、部署和管理离散逻辑单元(服务)模型的方法。 SOA 并非一个新鲜事物,而只是面向对象模型的一种替代。虽然基于 SOA 的系统并不排除使用 OOD 来构建单个服务,可是其总体设计倒是面向服务的。因为 SOA 考虑到了系统内的对象,因此虽然SOA 是基于对象的,可是做为一个总体,它却不是面向对象的。浏览器
SOA 系统原型的一个典型例子是 CORBA,它已经出现很长时间,其定义的概念与 SOA 类似。SOA 创建在 XML 等新技术的基础上,经过使用基于 XML 的语言来描述接口,服务已经转到更动态且更灵活的接口系统中,CORBA 中的 IDL 没法与之相比。下图描述了一个完整的 SOA 模型。安全
在SOA 模型中,全部的功能都定义成了独立的服务。服务之间经过交互和协调完成业务的总体逻辑。全部的服务经过服务总线或流程管理器来链接。这种松散耦合的架构使得各服务在交互过程当中无需考虑双方的内部实现细节,以及部署在什么平台上。服务器
SOA的架构框架:SOA的核心主体是服务。网络
SOA的核心要素:SOA的目标就是实现灵活可变的IT系统。要达到灵活性,经过三个途径来解决:标准化封装、复用、松耦合可编排。架构
标准化封装:传统软件架构,由于封装的技术和平台依赖性,一直没有完全解决互操做问题。互联网史无前例的开放性意味着各节点可能采用不一样的组件、平台技术,对技术细节进 行了私有化的约束,构件模型和架构没有统一标准,从而致使架构平台自身在组件描述、发布、发现、调用、互操做协议及数据传输等方面呈现出巨大的异构性。各 种不良技术约束的结果是软件系统跨互联网进行交互变得困难重重,最终致使了跨企业/部门的业务集成和重组难以灵活快速的进行。在软件的互操做方面,传统中间件只是实现了访问互操做,即经过标准化的API实现了同类系统之间的调用互操做,而链接互操做仍是依赖于特定的访问协议,如JAVA使用RMI,CORBA使用IIOP等。而SOA经过标准的、支持Internet、与操做系统无关的SOAP协议实现了链接互操做。并且,服务的封装是采用XML协议,具备自解析和自定义的特性,这样,基于SOA的中间件还能够实现语义互操做。SOA要实现互操做,就是经过一系列的标准族,来实现访问、链接和语义等各类层面的互操做。框架
软件复用:软件复用,即软件的重用,也叫再用,是指同一事物不做修改或稍加改动就屡次重复使用。从软件复用技术的发展来看,就是不断提高抽象级别,扩大复用范围。最先 的复用技术是子程序,人们发明子程序,就能够在不一样系统之间进行复用了。可是,子程序是最原始的复用,由于这种复用范围是一个可执行程序内复用,静态开发 期复用,若是子程序修改,意味着全部调用这个子程序的系统必须从新编译、测试和发布。为了解决这个问题,人们发明了组件(或者叫控件),如MS操做系统下的DLL组件。组件将复用提高了一个层次,由于组件能够在一个系统内复用(同一种操做系统),并且是动态、运行期复用。这样组件能够单独发展,组件与组件调用者之间的耦合度下降。为解决分布式网络计算之间的组件复用,人们发明了企业对象组件,如(Com+,.NET,EJB等),或者叫分布式组件。经过远程对象代理,来实现企业网络内复用,不一样系统之间复用。传统架构的核心是组件对象的管理。但分布式组件也是严重依赖其计算环境,因为构件实现和运行支撑技术之间存在着较大的异构性,不一样技术设计和实现的构件之间没法直接组装式复用。而现代SOA的重要特征就是以服务为核心,如WebService,SCA/SDO等。经过服务,或者服务组件来实现更高层次的复用、解耦和互操做,即SOA架构中间件。由于服务是经过标准封装,服务组件之间的组装、编排和重组,来实现服务的复用。并且这种复用,能够在不一样企业之间,全球复用,达到复用的最高级别,而且是动态可配置的复用。运维
耦合关系:SOA架 构在松耦合解耦过程也发展到了最后的境界。传统软件将软件之中核心三部分网络链接、数据转换、业务逻辑所有耦合在一个总体之中,造成“铁板一块”的软件, “牵一发而动全身”,软件就难以适应变化。分布式对象技术将链接逻辑进行分离,消息中间件将链接逻辑进行异步处理,增长了更大的灵活性。消息代理和一些分 布式对象中间件将数据转换也进行了分离。而SOA架构,经过服务的封装,实现了业务逻辑与网络链接、数据转换等进行彻底的解耦。异步
金蝶readySOA实施方法包括结合TOGAF造成的SOA实施方法、SOA架构成熟度模型等。
TOGAF架构开发方法ADM提供了可灵活利用的组织企业架构的开发和治理的过程。一个成功的SOA落地项目的建设并不是一蹴而就,而是分阶段逐步实现的,其生命周期过程主要能够分为初步阶段、架构阶段、实施阶段、变动管理阶段四大环节完成。一般要从组织的某个独立的业务单元开始,以后再由小及大,逐渐在跨组织范围的总体业务中扩散,逐步完善整个组织的SOA 平台,最终实现随需应变的企业IT架构。针对SOA项目的指导,TOGAF定义了其架构开发方法ADM各阶段和SOA项目全生命周期的各阶段之间的映射关系,造成了具备良好操做性的架构开发方法体系。
金蝶Apusic中间件SOA完整实现产品系列
金蝶Apusic应用服务器(AAS)为企业应用提供稳定、高效、安全的开发平台与运行引擎,是全部组件和服务的容器与计算环境。
金蝶Apusic消息中间件(AMQ)提供消息传输服务的基础系统软件,保障数据在复杂的网络中高效、稳定、安全、可靠的传输,并确保传输的数据不错、不重、不漏、不丢,是实现SOA分布式计算的集成通讯平台。
金蝶Apusic 企业服务总线(AESB)以面向服务的方式,实现异构、分布式系统之间集成共享、互联互通的基础软件平台,是SOA治理(服务注册、服务存储、服务路由、安全控制和版本管理)的基础设施。
金蝶Apusic业务流程管理(ABPM)是一款面向业务的、具备高度扩展性和强大整合能力的流程中间件,支持BPEL协议,完整并有力支撑了业务流程管理的全生命周期,实现服务的组合和流程编排。
金蝶Apusic数据交换和管理平台AEI(Apusic Exchange & Integrator),可以针对分布式的异构数据源,对数据进行分析、采集、转换、清洗、影射、持久等操做,提供分布式数据源之间数据集成和交换的解决方案,实现SOA的信息服务。
金蝶Apusic门户平台(APS-Apusic Portal Server)使组织的应用、人员、信息、流程有机聚合,使用户可以经过单一渠道访问所需的个性化信息,它支持标准的JSR Portlet的交互和个性化编排。
金蝶Apusic OperaMasks开发平台,是构建SOA服务和集成化的开发平台。AOM AppFrame是开放高效的基础应用运行平台,为企业应用开发提供构件化的编程模型与运行期支撑;AOM Studio是全开发生命周期支持的集成开发环境,为企业应用开发提供从代码开发、展示设计,到配置管理、协同开发的一站式支持;而 AOM BizModeler以直观快速的图形化方式地对业务逻辑进行分析建模、服务封装、流程编排、部署发布。
金蝶Apusic Universal Manager是金蝶中间件2.0产品的统一管控平台,依托于MaaS理念,基于浏览器的、彻底可视化的、拥有插件体系可扩展的管控平台。
金蝶中间件Ready SOA支撑平台产品彻底按照TOG-SOA参考架构进行设计,传承了金蝶十余年从事大规模关键性企业级应用开发以及核心基础设施建设之丰富经验。在SOA项目的全生命周期的建设过程当中,金蝶Ready SOA支撑平台,可以有效地简化新项目开发和已有项目资产集成的过程,提高效率,下降运维成本。对指望经过建设SOA来改善其业务和IT基础设施的灵活性,提高业务敏捷性的组织而言,金蝶Ready SOA支撑平台是最佳选择。
关于SOA的内容还有不少,我只是介绍了不多的一部分,现在我对于SOA架构分析仍是止于学习阶段,尚未实际工做项目的经验,往后如有这方面的项目再回来补充经过实战得到的理解。
引用文章:https://blog.csdn.net/hu19930613/article/details/82749534和https://www.cnblogs.com/bolang100/p/6603361.html