當(dāng)前位置:工程項(xiàng)目OA系統(tǒng) > 泛普各地 > 廣西OA系統(tǒng) > 南寧OA系統(tǒng) > 南寧OA快博
淺談:企業(yè)應(yīng)該如何用好中間件
一、原則
在選好系統(tǒng)框架和統(tǒng)一開發(fā)方針后, 系統(tǒng)中間件的開發(fā)就應(yīng)充分利用已有框架所提供的服務(wù)和工具。通常中間件的開發(fā)應(yīng)遵循以下幾條原則:
1. 系統(tǒng)結(jié)構(gòu)分層,業(yè)務(wù)與實(shí)現(xiàn)分離,邏輯與數(shù)據(jù)分離
首先,應(yīng)用系統(tǒng)按照客戶端、Web服務(wù)器、應(yīng)用服務(wù)器、數(shù)據(jù)服務(wù)器分層;其次,以上幾層分別提煉出客戶端瀏覽器上和Web服務(wù)器上的中間件,即用戶可視化界面中間件與應(yīng)用服務(wù)器上的應(yīng)用邏輯中間件。在該層次上特別注意將應(yīng)用邏輯從數(shù)據(jù)中分離。理由有:
應(yīng)用邏輯變動頻繁,特別在當(dāng)前競爭激烈的市場上,要不斷適應(yīng)用戶越來越苛刻的需求。 將應(yīng)用邏輯獨(dú)立分離,可即插即用替換中間件,讓系統(tǒng)易于升級。
應(yīng)用邏輯是應(yīng)用系統(tǒng)的核心,分離出來有利于高質(zhì)量、高效處理。
在多層結(jié)構(gòu)應(yīng)用系統(tǒng)中, 如果應(yīng)用服務(wù)器上所用中間件有變化, 獨(dú)立分離出來的應(yīng)用邏輯則不會受到影響。
應(yīng)用邏輯如何獨(dú)立分離呢? 應(yīng)該按應(yīng)用域內(nèi)功能特性去劃分。一般來說,功能代表一組企業(yè)活動,對企業(yè)活動的執(zhí)行處理、操作控制、策略規(guī)則、限制條件等都屬應(yīng)用邏輯。而對數(shù)據(jù)處理的中間件必須放到數(shù)據(jù)服務(wù)器上。
如用UML語言和Rose工具時,具體做法是:
用user case圖對應(yīng)用系統(tǒng)域進(jìn)行描述。
對每種user case建立事件流說明, 關(guān)注主題事件流功能。它常常是應(yīng)用邏輯中間件的雛形內(nèi)容。
用類圖、包圖找底層和高層邏輯中間件。通常,事件控制功能或事務(wù)性功能都屬于應(yīng)用邏輯中間件的候選中間件。
在利用已有中間件或購買的中間件進(jìn)行組裝時,需要編制一些粘合代碼,對這些完成粘合定制中間件的代碼最好也要中間件化,盡可能按容器方式構(gòu)造,以便構(gòu)成高層上的中間件。
2. 以接口為核心,使用開放標(biāo)準(zhǔn)
中間件設(shè)計(jì)的目標(biāo)就是即插即用,寫一次,處處可用。達(dá)到此目標(biāo)的關(guān)鍵是中間件提供了契約式的接口。它的輸入接口代表了環(huán)境為它提供的服務(wù),輸出接口代表了它為環(huán)境提供的服務(wù)。中間件的輸入、輸出接口決定了中間件之間的連接。為了獨(dú)立于中間件供應(yīng)商,要用統(tǒng)一標(biāo)準(zhǔn),應(yīng)使用開放標(biāo)準(zhǔn),如CORBA、DCOM、JavaBean、EJB 等。
用中間件組合定制開發(fā),接口很重要,它是中間件之間的契約。一個接口提供一種服務(wù),完成某種邏輯行為。中間件接口由兩部分組成:一是署名部分,即中間件本身提供服務(wù)的描述;二是行為部分,即中間件行為的描述。一個中間件可以有一個或多個接口,在應(yīng)用系統(tǒng)中,各中間件接口必須用統(tǒng)一標(biāo)準(zhǔn)。開發(fā)者自已開發(fā)的中間件,也必須用相同標(biāo)準(zhǔn)來提供API接口。
3.中間件語義的描述要形式化
中間件接口的標(biāo)準(zhǔn)化實(shí)質(zhì)上是中間件語義形式化描述措施的一個重要方面。除此以外,還有前置和后續(xù)條件定義操作、命名服務(wù)中命名和命名上下文標(biāo)準(zhǔn)、目錄和目錄上下文標(biāo)準(zhǔn)、事務(wù)服務(wù)描述符、部署描述符等,同時有命名規(guī)則、目錄和命名綁定規(guī)則、事務(wù)語義定義、資源分布部署說明等。在不同標(biāo)準(zhǔn)中,它們都有自己的形式化語義規(guī)定。如 JNDI提供瘦型目錄訪問協(xié)議(LDAP),按可區(qū)分名字和樹形上下文描述,實(shí)現(xiàn)用戶和對象的查詢;在EJB中有會話Bean和實(shí)體Bean事務(wù)描述符、 EJB部署描述符;而在EJB部署描述符頂級元素中,定義了應(yīng)用程序元數(shù)據(jù)的容器、EJB 數(shù)據(jù)結(jié)構(gòu)、裝配信息和各種文件名。
4.提煉封裝中間件過程要嚴(yán)格記錄
由于中間件允許第三方使用,所以要保證第三方用戶能正確理解中間件設(shè)計(jì)思想,就必須記錄每次提煉的變化。通常,要用版本來管理。在開發(fā)中間件過程中選用工具時,應(yīng)注意選有版本管理功能的工具。在整個應(yīng)用軟件中,必須保證版本的一致性。當(dāng)中間件升級后,容器相應(yīng)地也要升級。
5.設(shè)計(jì)模式也可以重用
CBSD的主要優(yōu)點(diǎn)之一是重用,它的目標(biāo)是代碼、設(shè)計(jì)、解決方案都能重用。而設(shè)計(jì)模式是設(shè)計(jì)經(jīng)驗(yàn)的記錄,利用它可以達(dá)到事半功倍的效果。目前己有幾十種設(shè)計(jì)模式可供參考應(yīng)用,而用戶界面設(shè)計(jì)的MVC模式就是最常用的一種。
6.利用開發(fā)工具
由于中間件具有自檢、持久、依賴于上下文、標(biāo)準(zhǔn)接口等特性,因此通常要利用開發(fā)工具來創(chuàng)建中間件和應(yīng)用軟件,這些工具如BeanBox、 Jbuilder、 VisualAge for Java、 EJBMaker、WebGain Studio、WebGain等提供標(biāo)準(zhǔn)接口的署名和行為描述,并可檢驗(yàn)和定制中間件屬性。
二、過程
CBSD 主要是利用已有中間件組合集成。它的開發(fā)過程與傳統(tǒng)方法不同。
1. 需求分析和中間件的評選
需求分析階段除分析外,還要進(jìn)行中間件的評選。一般分兩步:查找所要中間件和評價中間件。
首先按需求分析結(jié)果,從中間件庫或中間件市場查找所需要標(biāo)準(zhǔn)的中間件,了解中間件的功能、可靠性、可預(yù)測性等特性,包括市場份額、以前業(yè)績;然后選出一些候選中間件,再進(jìn)行評價和決策。由于評價方法不精確,需求有時也不十分明確,因此評價和決策比較難。這一步主要確定中間件適應(yīng)性,主要考慮修改定制中間件的投資和風(fēng)險。
2.中間件的剪裁和擴(kuò)展
經(jīng)過評選的中間件不可能馬上都能用,有時要對已有中間件進(jìn)行屬性擴(kuò)展或修改,稱之為中間件的剪裁和擴(kuò)展。這常常需要對中間件開發(fā)者提出擴(kuò)展或修改的意見,由中間件開發(fā)者去完成。注意只改內(nèi)部屬性,不能改接口。
3.中間件的測試
經(jīng)過剪裁和擴(kuò)展后,也可能要重新開發(fā)一些新中間件,這些擴(kuò)展或新開發(fā)的中間件,必須在構(gòu)造應(yīng)用工具上進(jìn)行測試,保證中間件功能及接口規(guī)范的實(shí)現(xiàn)。這一步比傳統(tǒng)的單元測試要快和容易。
4.中間件的裝配和集成
中間件的裝配和集成是把中間件裝配成模塊或打成包,在模塊或包中都可以有自已的定制描述符。如用EJB模型時,要把中間件與EJB部署描述符裝配成EJB JAR模塊;再把EJB模塊和J2EE部署描述符打包成J2EE平臺上的應(yīng)用程序;最終將它部署到應(yīng)用服務(wù)器環(huán)境下。客戶端建立EJB客戶庫,產(chǎn)生EJB 客戶接口以及相應(yīng)的EJB存根。客戶中間件與客戶EJB部署描述符被打包成J2EE平臺上的客戶應(yīng)用程序。對大型系統(tǒng)而言,與傳統(tǒng)系統(tǒng)集成也成為一個問題,可利用Java技術(shù)本地接口JNI解決。但這只適用于非分布式、簡單的老系統(tǒng)集成,當(dāng)有訪問多個老系統(tǒng)的情況出現(xiàn)時,則不能用JNI,必須采用其他技術(shù), 如CORBA、HTTP、RMI、TCP/IP、JMS、XML等實(shí)現(xiàn)集成。
5.應(yīng)用系統(tǒng)的部署
早在EJB框架出現(xiàn)以前, 應(yīng)用系統(tǒng)是獨(dú)立的Java應(yīng)用程序。如要完成多客戶、異構(gòu)、分布式、安全并可擴(kuò)展的功能,開發(fā)者就要從事大量的編程工作,不可能在幾個月內(nèi)完成。EJB框架出現(xiàn)后, 應(yīng)用系統(tǒng)可基于應(yīng)用服務(wù)器開發(fā),應(yīng)用系統(tǒng)訪問資源及網(wǎng)上通信都由應(yīng)用服務(wù)器提供服務(wù)。應(yīng)用系統(tǒng)開發(fā)只關(guān)注應(yīng)用邏輯和數(shù)據(jù)定義,從而使整個應(yīng)用系統(tǒng)的完成變得簡單。完成應(yīng)用邏輯和數(shù)據(jù)定義編程工作后,對應(yīng)用服務(wù)器及客戶按標(biāo)準(zhǔn)的XML文件配置和部署, 完成了整個應(yīng)用系統(tǒng)的部署。
6.系統(tǒng)的演化
應(yīng)用系統(tǒng)的維護(hù)就是系統(tǒng)的演化過程, 系統(tǒng)功能的不斷改善和擴(kuò)展,是通過對系統(tǒng)中中間件的升級替換來實(shí)現(xiàn)的。隨著中間件版本的變換, 應(yīng)用系統(tǒng)也形成了不同的版本。這就是系統(tǒng)的演化。
三、 Java應(yīng)用中間件平臺
Sun公司經(jīng)過多年努力,在Java應(yīng)用方面做出了許多貢獻(xiàn)。至今, 應(yīng)用平臺共有四種:Java Card、J2ME、J2SE、J2EE,
Java Card是最小的應(yīng)用平臺,是為Java Smart 信用卡設(shè)置的平臺,目前在美國大量應(yīng)用,深受歡迎。Java Card 有一組API接口,運(yùn)行在卡虛擬機(jī)上. Java Card統(tǒng)一了智能卡的編程接口,提供了強(qiáng)大的安全機(jī)制,支持多次裝載 Applet,支持一卡多 Applet 的功能。
J2ME是Java 2平臺的微型版,它分成CDC(connected device configuration)和CLDC(connected limited device configuration)兩部分。CDC運(yùn)行在連接虛擬機(jī)上,為手提式計(jì)算機(jī)一類較復(fù)雜的移動設(shè)備提供應(yīng)用平臺;CLDC運(yùn)行在核心虛擬機(jī)(KVM) 上,它實(shí)現(xiàn)MIDP(Mobile Information Device Profile)移動信息設(shè)備應(yīng)用平臺,即針對手機(jī)之類的設(shè)備建立移動計(jì)算平臺。
J2SE是Java 2平臺的標(biāo)準(zhǔn)版, 它適用于桌面系統(tǒng),提供CORBA標(biāo)準(zhǔn)的ORB技術(shù),結(jié)合Java的RMI支持分布式互操作環(huán)境。它運(yùn)行在Java虛擬機(jī)上。在引入了Java IDL后, J2SE支持IIOP通信。它是高可移植性、異構(gòu)性的實(shí)現(xiàn)環(huán)境和健壯平臺,也是實(shí)現(xiàn)可伸縮性、可移植性、分布式異構(gòu)互操作應(yīng)用軟件開發(fā)的標(biāo)準(zhǔn)平臺。
J2EE是Java 2平臺的企業(yè)版。J2EE技術(shù)的基礎(chǔ)就是J2SE標(biāo)準(zhǔn)版,它鞏固了標(biāo)準(zhǔn)版中的許多優(yōu)點(diǎn)。其最終目的就是成為一個能夠使企業(yè)開發(fā)者大幅縮短投放市場時間的體系結(jié)構(gòu)。它為靈活配置各種多層企業(yè)應(yīng)用軟件,特別是B2B、B2C等電子商務(wù)應(yīng)用,提供了強(qiáng)大的服務(wù)功能。最近又新加了Connector API服務(wù),使企業(yè)應(yīng)用的開發(fā)和部署有了一系列成熟的技術(shù)。J2EE已成為企業(yè)解決方案的工業(yè)標(biāo)準(zhǔn),29家公司獲得J2EE技術(shù)的使用許可證。(CIO時代論壇)
- 1廣西南寧主要用的是哪個OA軟件?好不好用?
- 2房價走勢不明買房易陷10大誤區(qū) 專家為你破解
- 3從《西游記》和《魔界》看東西方項(xiàng)目管理
- 4縱觀國外流程管理的技術(shù)演進(jìn)
- 5企業(yè)福州OA項(xiàng)目實(shí)施失敗的雙向分析
- 6面向再造的企業(yè)信息化初探
- 7開源SOA之主要優(yōu)點(diǎn):簡單易用
- 8中小企業(yè)如何抓住B2B做營銷?
- 9福州OA:不同的理解,迥異的后果
- 10梅耶爾對雅虎進(jìn)行重組 關(guān)閉韓國業(yè)務(wù)并裁員200人
- 11當(dāng)前是創(chuàng)建SOA企業(yè)的大好時機(jī)嗎?
- 12半年投訴超萬件 質(zhì)量頑疾成中國地產(chǎn)業(yè)難題
- 13中小企業(yè)創(chuàng)世紀(jì)在逆境中尋求生機(jī)
- 14呼叫中心高效運(yùn)營的六個基本特征
- 15PLM項(xiàng)目快速實(shí)施和上線應(yīng)用策略
- 16核心價值觀與企業(yè)績效之關(guān)聯(lián)
- 17電子商務(wù)時代 櫥柜營銷渠道轉(zhuǎn)型迫在眉睫!
- 18網(wǎng)友評論:金融危機(jī)程序員應(yīng)該如何應(yīng)對
- 19金融風(fēng)暴席卷而來 福州OA成也蕭何敗也蕭何
- 20企業(yè)知識產(chǎn)權(quán)信息化的解決方案
- 21蘋果屏蔽Siri“涉黃”信息 曾被質(zhì)疑為招嫖工具
- 22與CIO一起破解ERP的使用成本之謎
- 23中小企業(yè)應(yīng)對危機(jī)應(yīng)當(dāng)從采購開始
- 24南寧泛普OA系統(tǒng)可以進(jìn)行全方位、動態(tài)的管理
- 25精益業(yè)務(wù)流程改進(jìn)提升企業(yè)核心競爭力
- 26CIO、CSO:信息真的安全了么?
- 27裝修家裝增項(xiàng)有約束 將不得超合同價8%!
- 28被指存污染隱患 包鋼稀土浙江慈溪項(xiàng)目引爭議
- 29毛大慶:讓所有人買的起房不可能 要保障最低端
- 30異地高考方案年底出臺 天津?qū)W籍房驟然走俏
成都公司:成都市成華區(qū)建設(shè)南路160號1層9號
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓