编者按:
“什么是中间件呢?”100个人可能会有100个答案,就像名著《浮士德》,每个读者心中都会有一个自己的浮士德形象。中间件就是这样一个被泛化了的概念,外延的无限扩大正在使中间件一词丧失基本的认同感。
在中国,2005年之后中间件概念的热度突然降了下来,很少有厂商还在拿中间件一词往自己脸上贴金,而是一窝蜂地开始热炒SOA。
在这种现象背后,我们感到了中间件来自两个方面的压力,一是中间件形态的快速演变正在使传统的概念丧失意义;另外就是新的技术潮流正在使中间件变得过时。
古代哲学家公孙龙的正名学说提倡“审其名实,慎其所谓”,正是要求对事物进行“不过”、“不旷”的指称。中间件要找准定位可能首先要做的就是正其名,不过正所谓不破不立,首先要做的就是把旧概念打破。当然纠缠于名词是毫无意义的,我们关心的其实是它背后的产业的演变。
正文:
IDC对中间件的表述是:中间件是一种独立的系统
软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和
网络通信。
从这个定义中我们能看出中间件承担的两大任务,解决分布式通信和细化软件分层。“中间件是两种技术的融合,一种技术就是用来解决分布式计算的通信问题,一种是用来进行大规模系统开发。”IONA的首席技术官Annrai O’Tooles说。
正是这两种能力赋予了中间件巨大的力量。“操作系统、数据库都解决的是单点的应用,而在网络时代,个体应用的价值是有限的,只有将所有的计算资源连接在一起,事情才会有意义,才会爆发出巨大的潜力。而连接网络上的计算资源正是中间件的特长所在,所以未来中间件将会扮演越来越重要的角色。”东方通首席架构师朱律伟说。
另一方面,中间件的出现推动了软件产业分工的进一步发展,使得应用系统的开发更加方便、快捷。金蝶中间件总经理蔡军说,对于应用软件开放商来说,中间件帮助他们屏蔽了底层的技术问题,使他们可以把更多的精力放在关注用户业务上面,从而在客户业务迅速变化,市场竞争不断激烈的环境中保持核心竞争力。
“成也萧何败也萧何”,解决分布式通信和细化软件分层既造就了中间件,同时这两个领域的演变也势必摧毁传统意义上的中间件。
“当前技术发展的大势就是把
互联网和企业应用真正融为一体,但是在web环境下就不再简单地是分布式的问题了。所以中间件的使命也可以说完成了,因此现在大家也不再叫中间件了。”中和威总经理王志伟说。他认为对于当前SOA时代,中间件就被ESB取代,而在未来还会继续演变。
另外,软件产业的快速发展使得分工越来越细,而中间件也开始分化,不仅上下扩展,应用领域也越来越广。蔡军认为当前软件的效率不高,不容易控制就是和分工不够细有关,软件产业从诞生以来一直在不断裂变,不断专业化分工,中间件的出现向前迈了一大步,但是还不会停止,中间件还会继续裂变。