細(xì)心!用心!耐心!

          吾非文人,乃市井一俗人也,讀百卷書,跨江河千里,故申城一游; 一兩滴辛酸,三四年學(xué)業(yè),五六點(diǎn)粗墨,七八筆買賣,九十道人情。

          BlogJava 聯(lián)系 聚合 管理
            1 Posts :: 196 Stories :: 10 Comments :: 0 Trackbacks

          利用JMS和JCA實(shí)現(xiàn)應(yīng)用之間的解偶

           
          傳統(tǒng)的企業(yè)信息信息系統(tǒng)集成的方法是一種點(diǎn)到點(diǎn)的緊偶合集成。在這種集成方法中,每個(gè)系統(tǒng)都要知道與之相集成的系統(tǒng)的結(jié)構(gòu)和它們之間的通信方式,并且一個(gè)系統(tǒng)的改變將影響其它的相關(guān)系統(tǒng),如果一個(gè)系統(tǒng)被替換,則所有的集成接口也必須進(jìn)行更換。
            
            更糟糕的是,由于企業(yè)業(yè)務(wù)邏輯分布在所有這些信息系統(tǒng)中,這種分散化的業(yè)務(wù)邏輯非常不便于管理和監(jiān)督,也不便于對(duì)業(yè)務(wù)過程進(jìn)行改進(jìn)。因此企業(yè)需要集成業(yè)務(wù)過程和系統(tǒng)的企業(yè)應(yīng)用集成架構(gòu)能夠?qū)崿F(xiàn)業(yè)務(wù)邏輯與應(yīng)用系統(tǒng)之間的解偶。
            
            業(yè)務(wù)過程集成
            
            業(yè)務(wù)過程通常是由事件驅(qū)動(dòng)的,事件就是由用戶行為、軟件和時(shí)間等引起的一些活動(dòng)。跨越多個(gè)異構(gòu)的應(yīng)用系統(tǒng)的業(yè)務(wù)過程的自動(dòng)化通常叫做業(yè)務(wù)過程集成。
            
            解偶應(yīng)用
            
            解偶應(yīng)用作為業(yè)務(wù)過程集成戰(zhàn)略的一部分,要求使不同的系統(tǒng)或者組件完全不必了解其他與之集成的系統(tǒng)或組件。解偶應(yīng)用包括:
            
            消除點(diǎn)到點(diǎn)的通信和消息傳遞;
            
            對(duì)消息的數(shù)據(jù)結(jié)構(gòu)的最少依賴;
            
            集中化管理業(yè)務(wù)過程流;
            
            發(fā)布/訂閱方式的消息傳遞
            
            J2EE應(yīng)用服務(wù)器體系結(jié)構(gòu)是一種基于事件的應(yīng)用集成架構(gòu),在這種集成架構(gòu)中,發(fā)布/訂閱方式的消息傳遞是其中核心組件,它通過消除點(diǎn)到點(diǎn)的消息傳遞和通信方式提供了第一層的解偶。發(fā)布/訂閱消息傳遞是一種異步的消息傳遞技術(shù),使消息生產(chǎn)者和消費(fèi)者相解偶,從而允許多到多的通信。這種解偶使消息的發(fā)布/訂閱雙方根本不用知道對(duì)方是誰。在Java消息服務(wù)(JMS)中,不同的主題域、時(shí)間類型或其它相關(guān)意義的端點(diǎn)集合稱做主題。主題除了不是點(diǎn)到點(diǎn)的之外,其他特性與隊(duì)列的概念相似。企業(yè)集成架構(gòu)可以根據(jù)事件類型設(shè)計(jì)不同的主題,這就意味著消息的發(fā)布方和訂閱方可以不用了解其它組件而被加入。發(fā)布者和訂閱者的減少也是透明的,這樣的優(yōu)點(diǎn)是提供給新的系統(tǒng)一個(gè)展示能力的機(jī)會(huì),他可以與舊的系統(tǒng)并列運(yùn)行,直到其能夠完全代替舊的系統(tǒng)。
            
            在發(fā)布/訂閱方式的消息傳遞中,一個(gè)系統(tǒng)的故障也不會(huì)給其他系統(tǒng)帶來太大的影響,因?yàn)槌掷m(xù)的消息和持久的訂閱者能夠?qū)⑾⑦M(jìn)行排隊(duì)指導(dǎo)故障系統(tǒng)恢復(fù)正常。
            
            JMS使發(fā)布/訂閱簡(jiǎn)單和標(biāo)準(zhǔn)化,JMS在基于J2EE 1.2規(guī)范的應(yīng)用服務(wù)器中就已經(jīng)存在,因此也不需要使用專用的消息傳遞系統(tǒng)接口。
            
            適配器
            
            適配器是一種可配置的組件,實(shí)現(xiàn)事件的格式和內(nèi)容的轉(zhuǎn)換和解偶應(yīng)用。適配器提供了數(shù)據(jù)格式的封裝功能,例如:如果一個(gè)系統(tǒng)提供了一個(gè)CSV(Comma Separate Value)文件,通過多個(gè)適配器可以將其轉(zhuǎn)變成企業(yè)的XML標(biāo)準(zhǔn)的文件,然后進(jìn)行發(fā)布。適配器進(jìn)一步解偶了應(yīng)用,使他們不依賴于特定的數(shù)據(jù)格式。
            
            連接器
            
            連接器特指基于Java 連接器架構(gòu)(JCA:Java Connector Architecture)的源適配器,其在J2EE1.3規(guī)范中被定義。JCA為軟件供應(yīng)商定義了標(biāo)準(zhǔn)的能夠與J2EE1.3應(yīng)用服務(wù)器相集成的企業(yè)信息系統(tǒng)的標(biāo)準(zhǔn)API。JCA連接器提供了一個(gè)重要的能力,它使J2EE應(yīng)用服務(wù)器能夠集成任何使用JCA適配器的企業(yè)信息系統(tǒng),大大簡(jiǎn)化了異構(gòu)系統(tǒng)的集成。有了JCA,企業(yè)只要購買一個(gè)應(yīng)用系統(tǒng)的基于JCA規(guī)范的適配器就可以將企業(yè)應(yīng)用部署到J2EE服務(wù)器上,不用編寫任何代碼就可以實(shí)現(xiàn)與J2EE應(yīng)用服務(wù)器的集成。
            
            工作流
            
            目前,對(duì)工作流有很多不同的名稱,但是其基本的活動(dòng)方式與一個(gè)狀態(tài)機(jī)相同。系統(tǒng)設(shè)計(jì)者為業(yè)務(wù)過程配置不同的狀態(tài)和他們的遷移條件,事件觸發(fā)工作流從一個(gè)狀態(tài)向另一個(gè)狀態(tài)遷移,狀態(tài)遷移本身是一個(gè)重要的業(yè)務(wù)過程事件。工作流提供了以下方面的優(yōu)點(diǎn):
            
            集中了業(yè)務(wù)過程流和流事件,增加了對(duì)發(fā)布/訂閱的影響;
            
            在改變業(yè)務(wù)過程的定義時(shí),減小了對(duì)現(xiàn)有系統(tǒng)的沖擊;
            
            使集成變成了對(duì)業(yè)務(wù)過程的定義,而不是系統(tǒng)之間數(shù)據(jù)的交換。
            
            工作流現(xiàn)在還不是J2EE規(guī)范的一部分,實(shí)現(xiàn)工作流管理系統(tǒng)與J2EE服務(wù)器的集成只能使用專用的工作流管理軟件。
            
            結(jié)論
            
            所有的系統(tǒng)都必須最后實(shí)現(xiàn)完全的集成,傳統(tǒng)的戰(zhàn)術(shù)上的集成方法最終導(dǎo)致花費(fèi)大量的時(shí)間、金錢和系統(tǒng)缺乏柔性。使用業(yè)務(wù)過程管理架構(gòu)解偶應(yīng)用,同時(shí)集成業(yè)務(wù)過程是一個(gè)更好的解決方案。一個(gè)基于J2EE的集成架構(gòu)能夠集中化管理業(yè)務(wù)過程流和用JMS和JCA實(shí)現(xiàn)應(yīng)用的解偶。通過解偶應(yīng)用,業(yè)務(wù)過程的集成能夠大大降低成本,并且提供柔性的業(yè)務(wù)過程流,提高企業(yè)的集成優(yōu)勢(shì)。
          posted on 2007-05-06 11:38 張金鵬 閱讀(160) 評(píng)論(0)  編輯  收藏

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 仁布县| 恩施市| 子长县| 玛多县| 阳春市| 墨脱县| 特克斯县| 沙湾县| 诸城市| 垣曲县| 香河县| 拉萨市| 温州市| 大洼县| 隆德县| 大田县| 田林县| 瓦房店市| 宁强县| 行唐县| 阿坝县| 喀喇| 古丈县| 乡城县| 麻栗坡县| 平凉市| 北京市| 万载县| 海阳市| 桂林市| 岫岩| 保定市| 洛川县| 南宁市| 霞浦县| 淮北市| 大石桥市| 达尔| 武隆县| 广饶县| 新疆|