如今谈论中间件,已经不能不说soa(面向服务的架构)了,哪家厂商的中间件不与soa扯上点关系,就是大不敬,技术上就不够先进,似乎soa就是一把尺子,亦或是质检部门的检验章,没它甭想进入市场.为什么会出现这样的现象?这样的现象合理吗?
中间件是什么?可以说中间件是一类软件产品,又可以进一步把它划分为应用服务器.消息中间件.交易中间件.门户服务器与工作流系统等多个类别,不同的中间件解决不同的问题.soa是什么?soa是一种软件系统提供功能的架构式样.组成这样的一个架构,需要有服务的请求者.服务的提供者.以及服务的描述者,其中,服务的请求者.提供者要遵循相同的规范与标准,才能实现基于互联网的调用,描述者则要把这些服务描述清楚,使请求者能够了解服务是做什么的.到那里去找,如何访问一个服务,这是一个支持松偶合的技术架构.要说一个是产品,一个是架构,两者结合在一起,即所谓符合或者支持soa架构的中间件产品,或者干脆称自己是soa架构的中间件产品,这意味着什么?对于用户而言,在采购中间件产品的时候,是否一定要购买这样产品呢? 【程序编程相关:Sun Solaris uucp/uus】
一定要选择soa的中间件? 【推荐阅读:Sun Solaris未指名的特权扩大和】
先来看所谓soa架构的中间件产品的含义,为此,我求教了相关中间件厂商,含义无外乎两个:一个是说采用这种中间件产品可以很好的构建soa的应用;再有就是采用这种中间件产品开发出来的应用,将很容易被整合进soa架构.两者的含义都差不多,就是其应用很容易实现soa.业内人士指出,所谓soa架构中间件并不十分的准确,因为这里中间件的提法太笼统了.前面说过,中间件可以分为7大类,其中有些产品,如应用服务器.门户中间件.一些新的工作流系统等,与互联网关系密切,本身就支持web服务的封装,基于它们开发的应用的功能很容易就能封装成web服务,支持soa;但是对于消息中间件.交易中间件等,来谈论soa,其意义就不大了.
总体看来,所谓soa架构的中间件,无非就是要表明,厂商提供的中间件产品对于soa有很好的考虑,而soa还是针对应用而言. soa概念的提出是为了解决动态的b2b应用整合的问题.这里不妨看一个理论中关于物流行业的例子.物流涉及仓储.运输.车辆等几个环节,如果这些环节相应的信息系统所提供的功能服务都能够以web服务的方式提交出来,那么相互的调用就会非常容易,很容易实现动态的b2b整合.哪怕你没有自己的仓库.车辆,同样可以利用这些服务,构建全新的物流商业模式,提供灵活的商业服务,成为一个第三方.第四方物流企业.对于企业而言也是这样,我们看一些成功的企业,如cisco,对于上下游的合作伙伴,具有很高的信息化的要求.以分销代理为例,cisco已经不接受传统的下单方式,其总代理必须通过电子商务的方式定购产品.... 下一页