Eric Newcomer現(xiàn)任IONA科技公司CTO。Eric有26年的計算機從業(yè)經(jīng)驗,其中15年是在DEC/Compaq公司度過的。他是 《Understanding SOA with Web Services》一書的作者,并參與了很多有關(guān)Web Service的重要規(guī)范和標(biāo)準(zhǔn)(如WS-CAF、WS-TX)的制訂。他目前還擔(dān)任OSGi企業(yè)專家工作組的聯(lián)合主席。 Mark Little (ML):Eric,你好。你可以就你自己以及與OSGi的關(guān)系做點介紹嗎? Eric Newcomer (EN):好幾年前,我們?yōu)閷崿F(xiàn)移動設(shè)備上的應(yīng)用分發(fā),就開始考察OSGi,但最后未能有任何具體成果。 去年夏天,我收到IONA于2006年9月11日參加OSGi企業(yè)工作組的邀請。但那天正好是我休假后的第一個星期一,因此就找了其他人看是否能代 替我去。最后沒有找到,所以也就沒參加這個小組。不過,我推薦了IONA參加OSGi的企業(yè)專家組(Enterprise Expert Group,EEG),我志愿擔(dān)任這個小組的聯(lián)合主席。 我認(rèn)為,OSGi只有有了企業(yè)的參與后,才能對整個行業(yè)產(chǎn)生影響,我相信IONA能成為其中的一股重要力量。 ML:OSGi存在的時間不短了,但似乎是最近才引起人們比較多的注意。你如何看待這個問題呢? EN:真正讓OSGi引起大眾關(guān)注的是Eclipse。而且我認(rèn)為,絕大多數(shù)人也是通過Eclipse來認(rèn)識OSGi的——Eclipse平臺是OSGi的一種實現(xiàn),你下載安裝的每個Eclipse插件,實際上在內(nèi)部都使用了OSGi。 但我要強調(diào)的是,這樣認(rèn)識OSGi是不夠的——OSGi還包括了符合當(dāng)前面向服務(wù)趨勢的編程模型,同時也支持動態(tài)發(fā)布(在企業(yè)級IT環(huán)境中,這一點越來越受到人們的重視)。 ML:IONA在OSGi中最為關(guān)注的是什么? EN:和其他很多公司一樣,我們對OSGi最為關(guān)注的是其將大型軟件項目有效分解并實現(xiàn)動態(tài)發(fā)布的能力。 同時我們也很重視OSGi在滿足企業(yè)當(dāng)前IT需求方面的潛能。我們認(rèn)為,它所包含的分發(fā)平臺、編程模型和運行時環(huán)境,使它在構(gòu)建SOA應(yīng)用方面具有重大優(yōu)勢,可以像Eclipse平臺為軟件工具所做的那樣,為企業(yè)的IT系統(tǒng)創(chuàng)造一個良性的生態(tài)環(huán)境。 業(yè)界也已為輕量級工具替代JEE做好了準(zhǔn)備,比如對于Spring與OSGi的結(jié)合,我們對此具有濃厚的興趣。 SOA的基礎(chǔ)結(jié)構(gòu)需求與過去的JEE應(yīng)用服務(wù)器、EAI代理等有明顯差異——SOA需要輕量化的、最好是在現(xiàn)有基礎(chǔ)上經(jīng)過改進(jìn)和優(yōu)化,而不是全新的東西。OSGi在這個領(lǐng)域具有很大的優(yōu)勢。 ML:ESB已經(jīng)獨立發(fā)展多年,現(xiàn)在突然間所有流行實現(xiàn)都要向OSGi靠攏。你認(rèn)為OSGi真的可以和ESB協(xié)同工作嗎? EN:當(dāng)然。首先,在OSGi提供的開發(fā)和發(fā)布平臺上,ESB如魚得水,可以充分使用OSGi的服務(wù)和工具。這 將大大縮短ESB新特性和新功能的研發(fā)周期,快速推向市場,并使ESB發(fā)布更易于管理。第二,OSGi編程模型為創(chuàng)建標(biāo)準(zhǔn)接口,讓Java容器調(diào)用ESB 功能提供了可能。最后,我相信大家都看到了OSGi以最優(yōu)方式切入ESB市場的可能性——OSGi成為ESB的運行平臺,廠商都可以開發(fā)運行于它之上的 OSGi插件。事實上,我認(rèn)為OSGi是一個普適于SOA架構(gòu)的平臺,這一點已經(jīng)在JBI V2和Eclipse的SOA Runtime Framework項目中體現(xiàn)出來。 ML:OSGi委員會內(nèi)部的工作進(jìn)展如何? EN:在6月28日的慕尼黑會議上,我們完成了需求討論,進(jìn)入了設(shè)計階段。也就是說從現(xiàn)在起,好戲真正開場了。 任何在多個組織工作過的人都知道,每個組織都有自己的辦事流程和方法。在OSGi中,最初應(yīng)該提交正式的RFP(Request for Proposal)需求,需求委員會審核通過RFP后,專家組成員開始編寫RFC(Request for Comment)——即闡述需求解決方案的設(shè)計文檔。此后(也可能同時),專家組成員會編碼完成參考實現(xiàn)(Reference Implementation,RI),再由某人(可能和RI編碼者不是同一個)完成一致性測試(Conformance Test,CT)。只有完成RI和CT后,規(guī)范才算完整。因此,我們目前剛剛開了個頭,但我們無疑是開了個好頭。 去年9月,企業(yè)工作組會議(會議聲明、會議紀(jì)要)完成了初期需求的收集和整理。12月,OSGi決定成立EEG,并于今年1月底在愛爾蘭的都柏林召開了第一次EEG會議。這次會議訂立了工作流程,此后到現(xiàn)在共整理出大約13個RFP。兩周前,EEG對其中的7個RFP投票審核通過,也就是說現(xiàn)在已進(jìn)入設(shè)計階段。 在提交的RFP基礎(chǔ)上,我們將花費大量時間,研究如何將現(xiàn)有的企業(yè)級技術(shù)(如Spring、SCA、JEE、JBI、Web Service等等)引入OSGi。 ML:未來幾年中,OSGi可能在哪些方面發(fā)生重大變化? EN:重大的基礎(chǔ)性變化應(yīng)該不會有。我認(rèn)為擴展現(xiàn)有能力,以期滿足企業(yè)需要是我們工作的重點。熟悉OSGi的人 都知道它源于嵌入式應(yīng)用,早期面向家用自動化,然后是汽車自動化和移動電話應(yīng)用系統(tǒng)的管理。因此一個問題也就隨之而來——一個企業(yè)版的OSGi,是否能和 嵌入版的一樣呢?是否需要增加其他東西?我們會很自然的想到J2ME、J2SE和J2EE(現(xiàn)在應(yīng)該是JME、JSE和JEE了,因為已經(jīng)都是Java2 平臺)的劃分策略。但到目前為止,這個問題對于OSGi的答案是,我們絕對不會這樣做。OSGi自身會做一些擴展和提升,以滿足企業(yè)環(huán)境中的IT需要,但 其內(nèi)核,不會發(fā)生變化。 很多擴展支持都以RFP形式提交討論了,我們不久就會看到,如優(yōu)化的JEE組件映射機制(比如JNDI、JDBC、RMI以及對象序列化)、對 Web應(yīng)用更好的支持、對同一JVM中用戶代碼和廠商代碼發(fā)布的更高安全性支持、OSGi內(nèi)部如何訪問外部操作系統(tǒng)(反之亦然),以及部署于遠(yuǎn)程OSGi 環(huán)境的服務(wù)的發(fā)現(xiàn)方式等等。 ML:有人認(rèn)為Sun應(yīng)該在EE7中選擇OSGi作為容器,你覺得呢? EN:絕對是,這樣一來可以解決很多問題。Sun選擇接受OSGi還是繼續(xù)與之對立,是關(guān)乎Java未來的一件大事。就我個人對OSGi的認(rèn)識而言,我認(rèn)為,Sun如果接納了OSGi,Java將在很多方面取得重大進(jìn)步,比如模塊性、版本控制和類加載等等。 在JSR 291(目的是將OSGi引入到Java標(biāo)準(zhǔn),成為JSE的官方組成部分)表決會上,Sun投了反對票。雖然最終是通過了,但Sun此舉表明了它的意圖。 Sun自己發(fā)起的Java模塊系統(tǒng)規(guī)范JSR 277,其實和OSGi的重迭部分很多。在此當(dāng)口,Sun面臨著在Java7中引入OSGi的重大機會,但盡管尚未看到官方表態(tài),很多跡象都表明Sun要 走中間路線,而不是正面歡迎OSGi。 我希望Sun在OSGi的問題上,能盡快回歸理性。其實反過來看,如果Sun真的繼續(xù)與OSGi對立,OSGi的未來或許更為光明,因為業(yè)界形勢已經(jīng)是今非昔比了。 查看英文原文:Eric Newcomer on the future of OSGi譯者簡介:羅小平,上海某大型公司互聯(lián)網(wǎng)中心技術(shù)總監(jiān),CSDN大版主,網(wǎng)絡(luò)ID為lxpbuaa(桂枝香在故國晚秋),曾著有《Delphi精要》一書。個人博客為http://blog.csdn.net/lxpbuaa,現(xiàn)在CSDN主持翻譯國外專家Herb Sutter的中文博客。他的Email和MSN為lxpbuaa AT 263.net。 |
|
|