扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
SOA是中间件发展的趋势
随着互联网技术的发展和全球经济一体化时代的来临,企业在信息化建设中产生了大量为满足产品和服务的软件系统,比如“ERP”、“OA”、“CRM”以及电子政务等,而这些系统之间缺少集成和通讯,形成了一个个的信息孤岛。而以应用集成和流程集成为目标的中间件产品成为了该领域的热点。
传统的企业集成软件所采用的技术可以分为以下几类:
1)远程过程调用(RemoteProducecall)
2)面向消息的中间件(Message-OrientedMiddleWare)—MQ
3)对象请求代理(ObjectrequestBrokers)—DCOM、CORBA、J2EE
传统的集成方式是一种紧耦合的继承方式;通讯协议也是非标准的,如微软的DCOM组件和JAVAEE的EJB组件之间无法直接调用;信息格式的非标准化,导致服务请求者和服务提供者之间无法直接通信;应用组件和传输协议的紧耦合,如EJB应用组件紧密耦合RMI传输协议,导致应用只能接受特定协议的请求消息;接口调用的非标准化,如javaxml的接口调用方法和JDBC的接口调用不一致,使得XML文件系统的信息资源和数据库的信息资源无法整合。
Webservice是一套规范,它定义了应用程序如何实现互操作性,并且和运行平台、操作系统、编程语言无关。为了实现互操作性,Webservice提供一套标准的类型定义,用于沟通不同平台、编程语言和组件模型中的不同数据类型。在传统的分布式系统中,基于接口的技术提供了一些方法来描述接口、方法和参数(如COM和COBAR中的IDL语言)。同样的,Webservice平台也提供一种标准来描述Webservice,让客户可以得到足够的信息来调用这个Webservice。最后,还必须有一种方法来对这个Webservice进行远程调用。这种方法实际是一种远程过程调用协议(RPC)。为了达到互操作性,这种RPC协议还必须与平台和编程语言无关。
SOA(ServiceOrientedArchitecture,面向服务的体系架构)是近年来软件规划和构建的一种新方法,其概念最早由国际咨询机构Gartner公司于1996年首次提出。SOA这个新的技术路线的提出很好的解决了中间件领域存在的难题,SOA具有以下的特征:
粗粒度服务:对于粗粒度的服务,当业务发生变化时,服务抽象层次的定义保持不变,通过服务时限层次的变更适应变化;保持服务定义层次不变,使得需求变更对于服务的消费者而言是透明的。这种服务实现的可替换性将业务需求的变化对IT的影响控制在合理的范围内,只对IT系统做必要的变更,从而提高对业务变化的响应速度。
松散耦合:服务消费者和服务提供者之间的松散耦合。在服务契约设计上,通过抽象设计减少技术依赖性;在服务调用层面上,通过各种中介保持服务调用双方的技术透明性;
标准化:采用WebService相关的协议标准如SOAP和WSDL,它能够隔离协议和消息等技术层面的关注,再调用Endpoint屏蔽应用层面的技术异构性,从而达到平台中立。
SOA可以看作是B/S模型、XML/WebService技术之后的自然延伸。SOA将能够帮助客户站在一个新的高度理解企业级架构中的各种组件的开发、部署形式,它将帮助企业系统架构者以更迅速、更可靠、更具重用性架构整个业务系统。以SOA架构的系统能够更加从容地面对业务的急剧变化.
SOA产品向微内核容器的架构方向发展
在系统平台的搭建过程中,模块的组织方式决定了系统平台将如何进行开发以及如何进行部署。传统的方式下通过包名的方式来区分模块,通过包名来区分模块的方式使得模块的复用变得特别的复杂,在每个模块一个工程的方式则可以让模块的复用比较的简单,由于模块的组织通常来说和系统的基础架构有直接的关联,由于系统的基础架构没有形成规范,这样就导致有可能因为模块的组织方式不同而无法复用的现象。
现在的趋势是基于OSGI规范构造软件产品基础平台,提供开放和通用的架构,使得用户以统一的方式开发、部署和管理服务模块。平台通过提供灵活的服务部署机制和强大的管理功能增强了设备的智能性。采用Bundle的方式来进行模块组织,对模块的引用只需接口调用,这就保证了模块模块引用和部署的简单性。在OSGI的规范下,对模块的重用比较简单。
OSGI的介绍
OSGI联盟成立于1999年3月,致力于制定管理本地网络设备服务的规范。OSGI组织是为家用设备、汽车、手机、桌面、小型办公环境以及其他环境制定下一代网络服务标准的领导者。
OSGIR4规范由Framework、StandardServices、FrameworkServices、SystemServices、ProtocolServices、MiscellaneousServices共同组成。
协同的软件主板SynchroMC
软件主板是一个微内核、插件式的基础平台,实现中间件的插件化运行环境及动态组装、基础服务。它基于OSGI规范,平台提供了开放和通用的架构,使得用户以统一的方式开发、部署和管理服务模块。
平台通过提供灵活的服务部署机制和强大的管理功能增强了智能性,采用Bundle的方式来进行模块组织,对模块的引用只需接口调用,这就保证了模块引用和部署的简单性。
软件主板的关键技术路线包括:
(1)中间件的插件化运行环境
为了提供插件统一的生命周期管理、配置、更新管理以及系统服务、管理、事务等公共功能,基于OSGI实现微内核、插件式的基础平台,实现集成中间件的个性化定制和动态组装平台。
(2)支持分布式体系的iSynchro插件规范
iSynchro插件规范提供了比OSGI规范更高级的调用接口,它使其他应用和中间件系统可以无缝的插接到软件主板上。更重要的是,本规范要支持分布式体系,即分布在不同计算机上的多个软件主板上的插件系统可以实现集成,就好像插接在一个软件主板上一样。这将极大的提高整体系统的可扩展性。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者