“什么是中間件呢?”100個(gè)人可能會(huì)有100個(gè)答案,就像名著《浮士德》,每個(gè)讀者心中都會(huì)有一個(gè)自己的浮士德形象。中間件就是這樣一個(gè)被泛化了的概念,外延的無(wú)限擴(kuò)大正在使中間件一詞喪失基本的認(rèn)同感。
在中國(guó),2005年之后中間件概念的熱度突然降了下來(lái),很少有廠商還在拿中間件一詞往自己臉上貼金,而是一窩蜂地開(kāi)始熱炒SOA。
在這種現(xiàn)象背后,我們感到了中間件來(lái)自?xún)蓚€(gè)方面的壓力,一是中間件形態(tài)的快速演變正在使傳統(tǒng)的概念喪失意義;另外就是新的技術(shù)潮流正在使中間件變得過(guò)時(shí)。
古代哲學(xué)家公孫龍的正名學(xué)說(shuō)提倡“審其名實(shí),慎其所謂”,正是要求對(duì)事物進(jìn)行“不過(guò)”、“不曠”的指稱(chēng)。中間件要找準(zhǔn)定位可能首先要做的就是正其名,不過(guò)正所謂不破不立,首先要做的就是把舊概念打破。當(dāng)然糾纏于名詞是毫無(wú)意義的,我們關(guān)心的其實(shí)是它背后的產(chǎn)業(yè)的演變。
IDC對(duì)中間件的表述是:中間件是一種獨(dú)立的系統(tǒng)軟件或服務(wù)程序,分布式應(yīng)用軟件借助這種軟件在不同的技術(shù)之間共享資源,中間件位于客戶(hù)機(jī)服務(wù)器的操作系統(tǒng)之上,管理計(jì)算資源和網(wǎng)絡(luò)通信。
從這個(gè)定義中我們能看出中間件承擔(dān)的兩大任務(wù),解決分布式通信和細(xì)化軟件分層?!爸虚g件是兩種技術(shù)的融合,一種技術(shù)就是用來(lái)解決分布式計(jì)算的通信問(wèn)題,一種是用來(lái)進(jìn)行大規(guī)模系統(tǒng)開(kāi)發(fā)?!盜ONA的首席技術(shù)官Annrai O'Tooles說(shuō)。
正是這兩種能力賦予了中間件巨大的力量。“操作系統(tǒng)、數(shù)據(jù)庫(kù)都解決的是單點(diǎn)的應(yīng)用,而在網(wǎng)絡(luò)時(shí)代,個(gè)體應(yīng)用的價(jià)值是有限的,只有將所有的計(jì)算資源連接在一起,事情才會(huì)有意義,才會(huì)爆發(fā)出巨大的潛力。而連接網(wǎng)絡(luò)上的計(jì)算資源正是中間件的特長(zhǎng)所在,所以未來(lái)中間件將會(huì)扮演越來(lái)越重要的角色。”東方通首席架構(gòu)師朱律偉說(shuō)。
另一方面,中間件的出現(xiàn)推動(dòng)了軟件產(chǎn)業(yè)分工的進(jìn)一步發(fā)展,使得應(yīng)用系統(tǒng)的開(kāi)發(fā)更加方便、快捷。金蝶中間件總經(jīng)理蔡軍說(shuō),對(duì)于應(yīng)用軟件開(kāi)放商來(lái)說(shuō),中間件幫助他們屏蔽了底層的技術(shù)問(wèn)題,使他們可以把更多的精力放在關(guān)注用戶(hù)業(yè)務(wù)上面,從而在客戶(hù)業(yè)務(wù)迅速變化,市場(chǎng)競(jìng)爭(zhēng)不斷激烈的環(huán)境中保持核心競(jìng)爭(zhēng)力。
“成也蕭何敗也蕭何”,解決分布式通信和細(xì)化軟件分層既造就了中間件,同時(shí)這兩個(gè)領(lǐng)域的演變也勢(shì)必摧毀傳統(tǒng)意義上的中間件。
“當(dāng)前技術(shù)發(fā)展的大勢(shì)就是把互聯(lián)網(wǎng)和企業(yè)應(yīng)用真正融為一體,但是在web環(huán)境下就不再簡(jiǎn)單地是分布式的問(wèn)題了。所以中間件的使命也可以說(shuō)完成了,因此現(xiàn)在大家也不再叫中間件了。”中和威總經(jīng)理王志偉說(shuō)。他認(rèn)為對(duì)于當(dāng)前SOA時(shí)代,中間件就被ESB取代,而在未來(lái)還會(huì)繼續(xù)演變。
另外,軟件產(chǎn)業(yè)的快速發(fā)展使得分工越來(lái)越細(xì),而中間件也開(kāi)始分化,不僅上下擴(kuò)展,應(yīng)用領(lǐng)域也越來(lái)越廣。蔡軍認(rèn)為當(dāng)前軟件的效率不高,不容易控制就是和分工不夠細(xì)有關(guān),軟件產(chǎn)業(yè)從誕生以來(lái)一直在不斷裂變,不斷專(zhuān)業(yè)化分工,中間件的出現(xiàn)向前邁了一大步,但是還不會(huì)停止,中間件還會(huì)繼續(xù)裂變。
僅是個(gè)技術(shù)術(shù)語(yǔ)嗎?
曾幾何時(shí),中間件是個(gè)純粹的技術(shù)術(shù)語(yǔ),但是現(xiàn)在重新審視市場(chǎng)上的中間件產(chǎn)品,你會(huì)發(fā)現(xiàn)其中的業(yè)務(wù)模塊在逐漸增多,同時(shí)越來(lái)越多的廠商開(kāi)始致力于業(yè)務(wù)中間件的發(fā)展。而這正是軟件產(chǎn)業(yè)不斷細(xì)分的必然結(jié)果,它使得上層應(yīng)用的開(kāi)發(fā)更加方便快捷。
關(guān)于業(yè)務(wù)中間件,蔡軍認(rèn)為隨著中間件產(chǎn)業(yè)的發(fā)展,可以把中間件劃分為兩種,靠近底層操作系統(tǒng)的系統(tǒng)中間件和其上的業(yè)務(wù)中間件,其中業(yè)務(wù)中間件是對(duì)復(fù)雜多變的業(yè)務(wù)需求進(jìn)行抽象的產(chǎn)物。
中創(chuàng)軟件商用中間件公司總經(jīng)理劉江寧認(rèn)為,在上層,基于中間件的應(yīng)用框架產(chǎn)品將得到極大豐富,例如面向金融的數(shù)據(jù)中心平臺(tái)、電信業(yè)務(wù)運(yùn)行支撐平臺(tái)、電子政務(wù)信息交換平臺(tái)、電子商務(wù)供應(yīng)鏈管理平臺(tái)等應(yīng)用框架型領(lǐng)域中間件將不斷豐富完善。
業(yè)務(wù)中間件的構(gòu)建和服務(wù)模塊的抽取有異曲同工之妙,SOA的根本是實(shí)現(xiàn)業(yè)務(wù)價(jià)值,因此從業(yè)務(wù)中提取出穩(wěn)定的服務(wù),實(shí)現(xiàn)靈活的組裝成為SOA的關(guān)鍵。蔡軍說(shuō):“SOA的關(guān)鍵是服務(wù)粒度的確定,既要保證靈活性又能實(shí)現(xiàn)穩(wěn)定?!毕嘈哦鴺I(yè)務(wù)中間件的發(fā)展也必將推動(dòng)SOA的應(yīng)用。
“中間件向應(yīng)用方向延伸是大勢(shì)所趨,否則現(xiàn)在中間件承擔(dān)的功能相對(duì)比較少,很容易被擠壓?!辈誊娬f(shuō),“中間件不斷向上拓展將削薄應(yīng)用的空間,未來(lái)可能只需要實(shí)施人員和咨詢(xún)?nèi)藛T只需要簡(jiǎn)單配置就能完成應(yīng)用系統(tǒng)的開(kāi)發(fā)。”
對(duì)于這個(gè)趨勢(shì),Annrai O'Tooles也持有相同的觀點(diǎn),他認(rèn)為,中間件未來(lái)發(fā)展的重點(diǎn)會(huì)在易用性上,而這又分為兩個(gè)方面:易于開(kāi)發(fā)和易于部署,后者會(huì)更加重要。“未來(lái)的應(yīng)用是配置出來(lái)的,而不是開(kāi)發(fā)出來(lái)的?!盇nnrai O'Tooles說(shuō)。通過(guò)配置而不是復(fù)雜的二次開(kāi)發(fā)來(lái)完成應(yīng)用的部署是軟件發(fā)展的未來(lái),這也對(duì)業(yè)務(wù)中間件提出了迫切的要求。
對(duì)于業(yè)界來(lái)說(shuō),向應(yīng)用拓展,發(fā)展業(yè)務(wù)中間件已經(jīng)開(kāi)始慢慢興起。普元副總裁程朝暉告訴記者,普元也正在往上走,例如普元發(fā)現(xiàn)所有的應(yīng)用系統(tǒng)都必須考慮組織機(jī)構(gòu)的因素,于是就抽象出組織機(jī)構(gòu)和權(quán)限管理的模塊,這樣應(yīng)用系統(tǒng)在這方面就可以直接基于這個(gè)模塊來(lái)開(kāi)發(fā)了。
而專(zhuān)注于BPM的炎黃盈動(dòng)更是把自己定位于業(yè)務(wù)中間件廠商,炎黃盈動(dòng)總經(jīng)理劉金柱認(rèn)為,BPM所處理的流程天生就是和業(yè)務(wù)密切相關(guān)的,BPM不過(guò)是把這些與流程相關(guān)的問(wèn)題共性抽象了出來(lái)。
不過(guò)蔡軍也指出,相比于系統(tǒng)中間件,業(yè)務(wù)中間件的難度更大一些,這么多年整個(gè)業(yè)界在這方面進(jìn)展也非常緩慢。因?yàn)閺膹?fù)雜、多變的業(yè)務(wù)中抽象出共同的東西,把握好個(gè)性化和產(chǎn)品化的矛盾,是一個(gè)非常巨大的挑戰(zhàn)。
“把握客戶(hù)需求的能力是一個(gè)挑戰(zhàn),怎么做不難,難的是要做什么?!背坛瘯熣f(shuō)。
當(dāng)然向應(yīng)用滲透,發(fā)展業(yè)務(wù)中間件,并不意味著要中間件廠商要做最終的應(yīng)用,對(duì)于中間件廠商來(lái)說(shuō)還是要明確自己的定位,提供平臺(tái),面向開(kāi)發(fā)商和集成商的策略是不變的?!澳惚仨毭靼字虚g件什么都做不了,這樣才有價(jià)值?!毖S盈動(dòng)總經(jīng)理劉金柱說(shuō),他認(rèn)為這需要中間件廠商把握好度,要有一個(gè)明確的、持久的產(chǎn)品戰(zhàn)略規(guī)劃和執(zhí)行力。
向應(yīng)用滲透使得業(yè)務(wù)中間件的行業(yè)化特點(diǎn)也日趨明顯,雖然不同的行業(yè)有很多共性的需求,但是必定會(huì)存在很多特殊性,因此有針對(duì)性的中間件解決方案對(duì)于行業(yè)用戶(hù)來(lái)說(shuō)將會(huì)更加有吸引力?!皹I(yè)務(wù)中間件的難度在于對(duì)行業(yè)的理解,它的設(shè)計(jì)人員必須是行業(yè)專(zhuān)家。”東方易維董事長(zhǎng)王昕告訴記者他們的業(yè)務(wù)中間件都會(huì)有很強(qiáng)的行業(yè)偏向。
IBM的中間件產(chǎn)品早已邁出了這一步,從2004年1月IBM軟件集團(tuán)宣布戰(zhàn)略轉(zhuǎn)型開(kāi)始,IBM軟件集團(tuán)就已開(kāi)始在全球發(fā)布行業(yè)中間件解決方案,已經(jīng)有面向12個(gè)行業(yè)62個(gè)打包的解決方案已經(jīng)全部出臺(tái),這12個(gè)行業(yè)包括了金融、銀行、保險(xiǎn)、零售、醫(yī)療衛(wèi)生、生命科學(xué)、電信、電子、汽車(chē)、消費(fèi)品、能源與公用事業(yè)和政府機(jī)構(gòu)。
關(guān)于中間件的行業(yè)化發(fā)展特點(diǎn),東方通首席架構(gòu)師朱律偉提出了另外一種視角,他認(rèn)為中間件廠商對(duì)行業(yè)的深入理解不僅有助于完善產(chǎn)品,同時(shí)提供的咨詢(xún)服務(wù)也會(huì)幫助自己通用的中間件產(chǎn)品在這個(gè)行業(yè)中推廣?!皩?duì)業(yè)務(wù)的深入理解有助于我們和合作伙伴一起為最終的客戶(hù)提供優(yōu)秀的解決方案,同時(shí)客戶(hù)并不關(guān)心你的中間件產(chǎn)品,你需要通過(guò)你對(duì)業(yè)務(wù)的了解來(lái)打動(dòng)他。”朱律偉說(shuō),“就像一個(gè)優(yōu)秀的吸塵器推銷(xiāo)員,他敲開(kāi)你的門(mén)后,不會(huì)直接向你銷(xiāo)售他的產(chǎn)品,而是借口討水喝,然后和你聊天,在聊天中根據(jù)你的房間狀況來(lái)談地面的清潔問(wèn)題,最后才會(huì)向你介紹他的吸塵器?!?/P>
另外業(yè)務(wù)中間件本身的特點(diǎn)決定了它對(duì)于開(kāi)發(fā)平臺(tái)的需要。“我們的開(kāi)發(fā)工具都不賺錢(qián)的,但是它使中間件的使用降低了成本,簡(jiǎn)化了復(fù)雜的學(xué)習(xí)過(guò)程,這有助于中間件的推廣和整個(gè)生態(tài)鏈的監(jiān)視?!辈誊娬f(shuō),他認(rèn)為對(duì)于業(yè)務(wù)中間件廠商來(lái)說(shuō),需要實(shí)現(xiàn)兩個(gè)方面的價(jià)值,客戶(hù)端穩(wěn)定運(yùn)行的價(jià)值,只是運(yùn)行環(huán)境的工作,還有就是開(kāi)發(fā)期快速穩(wěn)定的價(jià)值,這就是開(kāi)發(fā)工具的作用。越來(lái)越厚的中間件
傳統(tǒng)上,人們僅僅把諸如BEA Tuxedo、IBM MQ等用于交易處理、消息傳遞的軟件看成中間件。后來(lái)隨著互聯(lián)網(wǎng)的興盛,誕生了應(yīng)用服務(wù)器的中間件,并迅速流行。時(shí)至今日,業(yè)界已經(jīng)廣泛地認(rèn)同了中間件從“薄”變“厚”的趨勢(shì)。
BEA公司中國(guó)區(qū)技術(shù)總監(jiān)喻思成認(rèn)為,今天人們所說(shuō)的中間件本身涵蓋的范圍已經(jīng)越來(lái)越大,原來(lái)純粹是交易、消息和J2EE的Web中間件,現(xiàn)在已經(jīng)擴(kuò)展到包括EAI、門(mén)戶(hù)、數(shù)據(jù)內(nèi)容整合等更大的中間件范疇。這些層次的中間件分別提供不同的功能來(lái)支持應(yīng)用的開(kāi)發(fā)和部署。
另外各個(gè)領(lǐng)域的軟件的不斷成熟,中間件開(kāi)始出現(xiàn)在不同的應(yīng)用環(huán)境中,例如嵌入式中間件、呼叫中心中間件、RFID中間件等等。而在行業(yè)應(yīng)用上,中間件也開(kāi)始從電信、金融、政府行業(yè)滲透到各行各業(yè)中,交通、能源、醫(yī)療、零售、汽車(chē)等行業(yè)的中間件也開(kāi)始興起。
伴隨著中間件應(yīng)用范圍的增大,中間件也開(kāi)始向平臺(tái)化方向發(fā)展。各個(gè)中間件廠商在發(fā)展過(guò)程中,逐漸拋棄了一個(gè)個(gè)中間件產(chǎn)品單打獨(dú)斗的方式,而是把所有的產(chǎn)品都集成在一個(gè)統(tǒng)一的平臺(tái)上,以一個(gè)整體的,并且各個(gè)模塊可以靈活拆卸的形式展現(xiàn)在用戶(hù)面前。同時(shí)平臺(tái)概念的誕生也進(jìn)一步促使了中間件廠商向此領(lǐng)域內(nèi)進(jìn)行更大范圍的擴(kuò)張,從而向用戶(hù)提供更加方便的、一站式的支持。
平臺(tái)化同時(shí)也是Annrai提出的中間件將不斷易于開(kāi)發(fā)方面發(fā)展的必然結(jié)果,隨著模塊的不斷增多,用戶(hù)在應(yīng)用開(kāi)發(fā)過(guò)程中所需的編程工作也會(huì)越來(lái)越少,因?yàn)榇蠖嗟墓δ芏伎梢酝ㄟ^(guò)豐富的中間件模塊來(lái)完成。同時(shí)用戶(hù)又可以根據(jù)自己的需求靈活地選擇相應(yīng)的模塊。相信在整個(gè)中間件產(chǎn)業(yè)不斷整合、優(yōu)化的潮流下,平臺(tái)化將會(huì)走的更加深入,各個(gè)模塊將更加細(xì)分和豐富。
計(jì)世資訊200年時(shí)曾提出“平臺(tái)=中間件+業(yè)務(wù)組件”,認(rèn)為“平臺(tái)”中包含中間件,并在中間件之上有一層和應(yīng)用有關(guān)聯(lián)的“業(yè)務(wù)組件”,以進(jìn)一步簡(jiǎn)化應(yīng)用系統(tǒng)的開(kāi)發(fā)?!?/P>
針對(duì)這一趨勢(shì),Gartner很早就提出了應(yīng)用平臺(tái)套件(APS)的概念,APS是由足以全面支撐現(xiàn)代電子商務(wù)應(yīng)用的基本的軟件架構(gòu)產(chǎn)品組成,一般包括了企業(yè)應(yīng)用服務(wù)器、門(mén)戶(hù)產(chǎn)品和企業(yè)應(yīng)用集成包。并且表明闡明APS可以為一個(gè)組織在跨應(yīng)用程序生命周期方面節(jié)省高達(dá)22%的產(chǎn)品上市時(shí)間,對(duì)代價(jià)不菲的開(kāi)發(fā)人員和架構(gòu)師的使用則可節(jié)省 50%。
IBM的WebSphere和BEA的Weblogic作為一個(gè)大而全的平臺(tái),幾乎能夠解決企業(yè)面臨的所有底層問(wèn)題。而SAP作為一個(gè)管理軟件廠商,更是花費(fèi)數(shù)年心血不斷打造NetWeaver平臺(tái),以及甲骨文針對(duì)此推出的Fusion計(jì)劃,平臺(tái)能力已經(jīng)成為了廠商競(jìng)爭(zhēng)的焦點(diǎn)。底線在哪里?
”如果說(shuō)中間件只是操作系統(tǒng)和應(yīng)用之間的那一層,那么RFID中間件和IPTV中間件又該怎么說(shuō)?“清華同方CTO周洪波這樣問(wèn)記者,他認(rèn)為傳統(tǒng)的中間件只關(guān)注于企業(yè)信息系統(tǒng)的建設(shè),而沒(méi)有考慮到更廣闊的天地,例如家庭娛樂(lè)、智能樓宇等。
因此周洪波認(rèn)為中間件是在數(shù)據(jù)庫(kù)之上和應(yīng)用之下的部分,實(shí)際上這正是中間件不斷上下拓展的結(jié)果,在一些領(lǐng)域中間件甚至直接和硬件相接。雖然按照 IDC關(guān)于中間件的表述,”中間件位于客戶(hù)機(jī)服務(wù)器的操作系統(tǒng)之上,管理計(jì)算資源和網(wǎng)絡(luò)通信?!暗蔷椭虚g件和底層的系統(tǒng)軟件(包括操作系統(tǒng)、網(wǎng)絡(luò)管理系統(tǒng)、數(shù)據(jù)庫(kù)、內(nèi)容管理系統(tǒng)等)之間的關(guān)系,一直是中間件發(fā)展過(guò)程中正不斷突破的界限。
”實(shí)際上很難定義操作系統(tǒng)和中間件的區(qū)別,很多時(shí)候做的都是同樣的事情,只不過(guò)抽象的層次不同。因此可以說(shuō)中間件正在向操作系統(tǒng)不斷的施加壓力,以使其做的更好?,F(xiàn)在看來(lái)需要和操作系統(tǒng)配合才能做的事情,最后可能完全會(huì)由中間件完成。我想他們最終會(huì)重合在一起的,不過(guò)可能需要一段時(shí)間罷了。“紐約大學(xué)的教授Doug Lea說(shuō)。
中創(chuàng)軟件商用中間件公司總經(jīng)理劉江寧也認(rèn)為在底層,中間件產(chǎn)品將進(jìn)一步融合操作系統(tǒng)、數(shù)據(jù)庫(kù)管理系統(tǒng)和其它資源管理平臺(tái)(如元數(shù)據(jù)管理、目錄管理、內(nèi)容管理)的功能,形成一層厚實(shí)的基礎(chǔ)軟件。
虛擬化技術(shù)現(xiàn)在正在朝這一步邁進(jìn),2006年,IDC就預(yù)測(cè)在服務(wù)器上安裝預(yù)裝操作系統(tǒng)的企業(yè)將會(huì)下降,因?yàn)榭蛻?hù)都選擇在服務(wù)器上預(yù)裝虛擬化的系統(tǒng)管理程序來(lái)替代操作系統(tǒng)。Gartner更是預(yù)測(cè)Vista將是微軟最后一個(gè)”集成化“Windows操作系統(tǒng),未來(lái)的Windows將進(jìn)入”虛擬模塊化“時(shí)代。Gartner認(rèn)為,虛擬化技術(shù)的發(fā)展使得微軟不得不將Windows過(guò)渡至以硬件支持為基礎(chǔ)的虛擬模塊化架構(gòu)。