四、虚拟化在SOA中的应用
虚拟化使SOA变得更为强大,主要体现在以下三个方面:
1.基础设施虚拟化:服务中有很大一部分具有移动性和动态特性,从而在分布式基础设施上对其生命周期进行管理也很难,因此我们可以通过对中间件进行虚拟化来实现这种功能。
2.信息虚拟化:由于服务具有移动性,因此从不同位置获得对整个企业中信息的访问是一个非常重要但却很困难的要求。我们可以通过对智能形式的信息访问进行虚拟化来请求信息附近启动服务从而减轻这个问题。
3.服务器虚拟化:服务器虚拟化对于面向服务的架构有特殊的优点,它可在机器或集群层通过分布式资源提供任务负载虚拟化。
以下将通过ESB(Enterprise Service Bus,企业服务总线)的例子来说明虚拟化在SOA中的应用。
ESB越复杂,所要从虚拟化技术中获取的价值就越多,这意味着IT对流程的依赖程度越高。采用基于虚拟技术和ESB的IT架构在支持动态业务环境的同时,在利用IT资源、提高业务流程的效率方面也大有作为,虚拟化技术能够在至少以上提到的三个领域对ESB进行深度融合。
1.基础设施虚拟化:由于服务中有很大一部分具有移动性,因此虚拟机为服务提供了一个中立级别的平台,不同类型的服务可以在相同的物理资源上执行。
2.信息虚拟化:由于服务是可以移动的,这就需要更多的智能形式的信息访问和虚拟化。信息虚拟化通常在一个基础或底层上进行构建,支持元数据管理和一些基础功能。
3.服务虚拟化:要求在需要的地方和时间启动服务,如果任务负载的需求增加了或产生了故障,那么可以在其他资源上自动启动相关服务,并将任务路由到这些服务上,即在机器或集群层通过分布式资源提供任务负载虚拟化。
五、结语
在本文中,我们已经简要介绍了SOA的概念及特点、虚拟化的概念及解决方案,进而我们引出了对在SOA中融合虚拟化的方式及具体应用的描述。现实中,SOA和基础设施虚拟化技术可以很好地进行协作,随着在企业中提供的服务规模和数量的增大,以及英特尔、微软等国际知名软硬件企业对该领域研发和竞争的不断深入,虚拟化必将成为SOA未来发展的一个重要方向。