• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 181, 文章 - 2, 評論 - 85, 引用 - 0
            數(shù)據(jù)加載中……

            在企業(yè)級 SOA 中使用 Web 服務(wù),第 4 部分: 使用 Rational 開發(fā)工具構(gòu)建 SOA 中間件應(yīng)用程序

            對構(gòu)建企業(yè)面向服務(wù)的體系結(jié)構(gòu)(Service-Oriented Architecture,SOA)中間件應(yīng)用程序感興趣嗎?Judith Myerson 將向您提供四種可能的方法:自頂向下 (top-down)、自底向上 (bottom-up)、旁路 (sideway) 和嵌入式 (embedding),同時幫助您探究每種方法的各種利弊。您還會了解到如何確定中間件應(yīng)用程序可以支持的共享 SOA 的最大數(shù)目。

            引言

            在我的關(guān)于企業(yè)級 SOA 系列的第一篇文章“在企業(yè)級 SOA 中使用 Web 服務(wù),第 1 部分: 使用多重 SOA 來消除企業(yè)系統(tǒng)之間的差異”中,我曾談及使用 SOA 消除企業(yè)系統(tǒng)差異的場景,展示了如何重用來自一個或多個 SOA 的 Web 服務(wù)(以數(shù)據(jù)為中心且具有業(yè)務(wù)邏輯),以及如何將它們組合到組織控制之下的一個復(fù)合應(yīng)用程序中。

            在第二篇文章“在企業(yè)級 SOA 中使用 Web 服務(wù),第 2 部分: 使外部 Web 服務(wù)互操作性最優(yōu)”中,我給出了不引起多重 SOA 過載的服務(wù)互操作性實例,從簡單的協(xié)議共存到復(fù)雜的多平臺互操作性。并且您了解了如何更改每個 Web 服務(wù)的服務(wù)類型、位置和平臺來實現(xiàn)原始應(yīng)用程序的業(yè)務(wù)流程。

            本系列的第三部分“在企業(yè)級 SOA 中使用 Web 服務(wù),第 3 部分: 將您的 SOA 合并成三維的整合中心以提高速度和可靠性”中,我解釋了您可以如何將 Web 服務(wù)和非 Web 服務(wù)的多重 SOA 合并成單個三維的集成中心來連接到各種后端企業(yè)大型機系統(tǒng)。在本文中,我將解釋您可以如何使用來自 IBM? Rational? 軟件的開發(fā)工具在三維空間中開發(fā)企業(yè) SOA 中間件應(yīng)用程序。同時您還將了解到如何將 Web 服務(wù)組件組合成跨多重 SOA 的中間件應(yīng)用程序,以及如何使用下面四種不同的方法來開發(fā)它們:

            • 自頂向下
            • 自底向上
            • 旁路
            • 嵌入式

            讓我們首先從物理和邏輯的角度研究每種方法。







            邏輯和物理 Web 服務(wù)

            物理 Web 服務(wù)即在存儲庫中所發(fā)布和找到的 Web 服務(wù)。創(chuàng)建一個邏輯 Web 服務(wù)后,可以繼續(xù)將一個邏輯 Web 服務(wù)與另一個物理 Web 服務(wù)組合起來,創(chuàng)建一個新的邏輯 Web 服務(wù)以供使用。之后,您可以將最后得到的邏輯 Web 服務(wù)與另一個物理或邏輯 Web 服務(wù)組合起來。您也可以將邏輯 Web 服務(wù)轉(zhuǎn)換成物理 Web 服務(wù)組件,以在存儲庫中發(fā)布和發(fā)現(xiàn)它們。

            通過定義中間件應(yīng)用程序的業(yè)務(wù)模型和物理 Web 服務(wù)組件的業(yè)務(wù)模型之間的關(guān)系,您可以創(chuàng)建邏輯 Web 服務(wù)的 SOA 中間件應(yīng)用程序。為此,您可以使用 Rational Software Architect 和 Rational Software Modeler 中的一個或同時使用它們來支持使用統(tǒng)一建模語言(Unified Modeling Language,UML)的模型驅(qū)動 (model-driven) 開發(fā),以及支持分別記錄系統(tǒng)的不同視圖的 UML 可視化建模設(shè)計。







            自頂向下方法

            自頂向下方法從 Web 服務(wù)或非 Web 服務(wù)中間件應(yīng)用程序金字塔(請參見圖 1)的頂端開始。您需要將其劃分成更小的 Web 服務(wù)或組件,在金字塔的每個低層繼續(xù)這個過程,直到最小的部分或組件到達金字塔的底部為止。系統(tǒng)的所有部分都將順利地集成在一起并進行互操作。


            圖 1. 自頂向下方法
            自頂向下方法

            然而,互操作性可能具有不同的含義,這取決于應(yīng)用程序的預(yù)定用途。例如,如果應(yīng)用程序是以數(shù)據(jù)為中心,那么互操作性就是以數(shù)據(jù)為中心的。但是如果應(yīng)用程序的主要目標(biāo)是實現(xiàn)業(yè)務(wù)流程,那么互操作性就是基于流程的。

            現(xiàn)在,讓我們從邏輯的角度來研究自頂向下方法。自頂向下方法考慮由企業(yè) SOA 中間件應(yīng)用程序組成的應(yīng)用程序的目標(biāo)。這個目標(biāo)又分成子目標(biāo),每個子目標(biāo)更進一步分成更小的單元。這個過程一直繼續(xù)下去,直到達到 SOA 中間件應(yīng)用程序的金字塔的底部為止。

            顯然,確保所有子目標(biāo)都順利地進行互操作非常重要。如果目標(biāo)針對的是提供一個服務(wù)或一組服務(wù),那么服務(wù)互操作性就成為首要關(guān)注的事情。然而,如果目標(biāo)針對的是實現(xiàn)策略和規(guī)則,那么我們就需要將重點放在策略的互操作性上。

            在現(xiàn)實世界中,并不存在單純的以數(shù)據(jù)為中心、基于流程或策略互操作性。相反,我們通常碰到的都是數(shù)據(jù)、流程、服務(wù)和策略互操作性混合在一起。每種互操作性類型所占的比例可以動態(tài)地變化,這取決于每個 Web 服務(wù)如何模塊化、設(shè)置優(yōu)先級、最優(yōu)化,以及如何通過松耦合的方式使彼此的交互達到最大程序。同樣,它也依賴于 Web 服務(wù)所運行的平臺(例如開放的 Eclipse 體系結(jié)構(gòu))。







            自底向上方法

            從物理的角度來說,自底向上方法將基本的 Web 服務(wù)組件定義為最小的基礎(chǔ)部分。這使您可以將它與上一層更大的元素組合在一起,繼續(xù)這個過程,直到所有部分都在金字塔頂點處集成為一個完整的復(fù)雜 Web 服務(wù)和關(guān)系的中間件應(yīng)用程序為止,如圖 2 所示。


            圖 2. 自底向上方法
            自底向上方法

            這個物理角度假定系統(tǒng)的所有部分都可以順利地進行互操作?;ゲ僮餍缘暮x依賴于 Web 服務(wù)交互的類型:以數(shù)據(jù)為中心、業(yè)務(wù)流程或組合。應(yīng)用程序之間互操作性的每種類型所占的比例可以動態(tài)地變化。

            從邏輯的角度來說,自底向上方法從作為 SOA 企業(yè)目標(biāo)的基礎(chǔ)構(gòu)件的子目標(biāo)(例如服務(wù)組件)開始。作為一名開發(fā)人員,您可以與分析人員一起,將它們組合成上一層的更大目標(biāo)。繼續(xù)這個過程,直到所有的子目標(biāo)都在金字塔的頂點處集成為一個 SOA 中間件的企業(yè)目標(biāo)為止。

            確保所有的子目標(biāo)都將順利地進行交互非常重要。如果子目標(biāo)針對的是提供一個服務(wù)或一組服務(wù),我們首要關(guān)注的事情就是子目標(biāo)之間的服務(wù)互操作性。然而,如果子目標(biāo)針對的是實現(xiàn)策略和規(guī)則,那么我們關(guān)心的事情就變成子目標(biāo)之間的策略互操作性。







            旁路方法

            從物理的角度來說,旁路方法(如圖 3 所示)允許您在自頂向下或自底向上方法的旁路添加或刪除 Web 服務(wù)組件。這使您能夠在保持現(xiàn)有中間件完整的同時,更好地響應(yīng)變更的設(shè)計和開發(fā)需求。旁路角度假定要添加的組件將可以與現(xiàn)有的組件順利地交互。同樣,它也假定要刪除的組件將不會破壞剩余組件之間的互操作性。


            圖 3. 旁路方法
            旁路方法

            從邏輯的角度來說,旁路方法使您能夠從在自頂向下或自底向上方法的旁路添加邏輯 Web 服務(wù)的子目標(biāo)開始。這使您可以添加諸如新的 Web 服務(wù)的服務(wù)類型和位置這樣的子目標(biāo)。您可以使用任一方法的旁路從邏輯 Web 服務(wù)中刪除子目標(biāo)。

            您還可以更改 Web 服務(wù)的子目標(biāo),以便重用它來開發(fā)各種中間件應(yīng)用程序。請確保在邏輯上添加、刪除或者更改子目標(biāo)時,Web 服務(wù)之間的互操作仍然能夠在生產(chǎn)環(huán)境中順利地進行。您還需要確保在測試環(huán)境中運行的 Web 服務(wù)能夠順利地出色工作。







            嵌入式方法

            從物理和邏輯的角度來說,嵌入式方法是上述三種方法的混合,至少要嵌入金字塔某層中的兩級或三級深。在這個嵌套、兩級嵌入式方法示例中,您可以在自底向上方法中嵌入自頂向下方法(請參見圖 4),或者反過來。您也可以在自頂向下或自底向上方法中嵌入旁路方法。


            圖 4. 嵌入式方法
            嵌入式方法

            您可以獲得三級嵌套的嵌入式方法。例如,通過將旁路方法嵌入到自頂向下方法,接著嵌入到自底向上方法,您可以做到這一點。您也可以將自頂向下方法嵌入到第二個自頂向下方法,接著再嵌入到自底向上方法。







            決定使用哪種方法

            在開放的體系結(jié)構(gòu)中開發(fā) SOA 中間件應(yīng)用程序依賴于(舉例)您想要使用哪種關(guān)系型或 WebSphere? 包。正如前面提到的,您可以使用 Rational Software Architect 和 Rational Software Modeler 來對企業(yè) SOA 中間件進行建模,將 Web 服務(wù)當(dāng)作對象、關(guān)系實體或者兩者的混合。您也可以使用 Rational Web Developer for WebSphere Software for Linux?、Windows? 2000、Windows 2003 Server 和 Windows XP 來簡化您的 Web 服務(wù)開發(fā)。







            結(jié)束語

            開發(fā)企業(yè) SOA 中間件需要事先計劃好可以將多少 SOA 作為中間件應(yīng)用程序組合在一起。最好就使用哪些方法開發(fā)中間件的問題與業(yè)務(wù)分析人員小組進行溝通。您還將發(fā)現(xiàn),解決了這些問題使開發(fā)企業(yè) SOA 中間件更加容易。您可以為中間件應(yīng)用程序開發(fā)這樣的 SOA,它們既重用,又可以交互和集成。而且通過事先決定使用哪些方法或方法的組合,使分析人員設(shè)計和分析中間件的工作變得簡單。分析人員能夠確定使用哪種方法以及將多少個 SOA 組合在一起,因為中間件基于它們之間各種類型的互操作性,并且可能引起企業(yè) SOA 過載。

            posted on 2006-04-17 03:32 wsdfsdf 閱讀(184) 評論(1)  編輯 收藏 引用 所屬分類: 技術(shù)文章

            評論

            # re: 在企業(yè)級 SOA 中使用 Web 服務(wù),第 4 部分: 使用 Rational 開發(fā)工具構(gòu)建 SOA 中間件應(yīng)用程序  回復(fù)  更多評論   

            這篇文章主要講了如何將 Web 服務(wù)組件組合成跨多重 SOA 的中間件應(yīng)用程序,以及如何使用下面四種不同的方法來開發(fā)它們:

            1.自頂向下
            2.自底向上
            3.旁路
            4.嵌入式

            在開放的體系結(jié)構(gòu)中開發(fā) SOA 中間件應(yīng)用程序依賴于(舉例)您想要使用哪種關(guān)系型或 WebSphere® 包。
            2006-04-24 21:00 | Tory
            婷婷久久综合九色综合绿巨人 | 久久只有这里有精品4| 国产高潮国产高潮久久久91 | 久久人人爽人人精品视频| 久久精品这里只有精99品| 久久久久亚洲AV无码专区首JN | 亚洲国产成人久久精品影视| 国产亚洲精午夜久久久久久| 中文成人无码精品久久久不卡 | 精品久久一区二区三区| 国产精品亚洲美女久久久| 亚洲国产精品无码久久久不卡| 2021久久国自产拍精品| 香蕉久久夜色精品国产尤物| 色综合久久88色综合天天 | 99久久做夜夜爱天天做精品| 精品午夜久久福利大片| 亚洲国产欧美国产综合久久| 久久99精品久久久久久秒播| 国产精品美女久久久| 精品久久久一二三区| 国产成人久久精品麻豆一区| 久久国产免费观看精品3| 久久毛片一区二区| 久久青青国产| 日本精品久久久久久久久免费| 成人久久综合网| 国产精品久久久久国产A级| 久久中文字幕精品| 久久人人爽人人爽人人片av麻烦| 中文字幕成人精品久久不卡| 久久国产亚洲高清观看| 欧美午夜精品久久久久免费视| 久久久久久综合网天天| 一本久久免费视频| 99久久夜色精品国产网站| 麻豆精品久久久一区二区| 国产91色综合久久免费分享| 亚洲精品无码久久久久去q | 久久久无码精品亚洲日韩蜜臀浪潮| 久久影院午夜理论片无码|