亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

JBI、SCA 簡述及對比

系統 1860 0

??? SOA在Java領域有兩套標準:一個是SUN推出的JBI,另一個是:IBM和BEA等公司推出的SCA和SDO標準。

??? JBI之關注Java組件只處理Java組件的集成。

??? SCA實現了業務組件和傳輸協議的分離,可以處理各種平臺組件的集成。

??? SDO可以的自由讀取各種不同數據源的數據。

?

一、JBI編程模型

??? JBI是由容器和插件(Plug-in)組成的可插入式架構。這個容器托管使用消息路由進行通信的插件組件。架構上,組件通過一個抽象的服務模型(一個消息傳遞模型,位于任何特殊協議或消息編碼之上的抽象層中)進行交互。

??? 在基于JBI的實現中,服務之間并不直接交互。取而代之的是,采用類似EAI實現中廣泛應用的消息代理架構,JBI容器扮演在服務之間路由消息的通用中介,(見圖1)。

JBI、SCA 簡述及對比

圖1 通過JBI協調消息交換

?

??? 分離交換的參與者(JBI架構的基礎9)在服務提供者和消費者之間提供了解耦,以及一個用于協調(mediating)服務通信量(或插入所有額外需要的功能)的明確位置。

??? 此時,協調器(Mediation)可以支持廣泛的功能,從消息傳送和安全加強,到基于內容的路由和服務標本標定。

JBI容器托管了2類不同的插件組件:

  1. 服務引擎(Service Engine,SE)。SE本質上是用來托管JBI環境內部服務提供者和消費者的標準容器f。例如,在JBI環境中經常出現的SE包括數據轉換器、業務規則容器和BPEL引擎。
  2. 綁定組件(Binding Component,BC)。BC為JBI環境外部的服務消費者和提供者提供互聯性。BC允許集成不提供Java API的組件/應用程序,并使用遠程存取技術訪問它們。


??? 組件間的交互利用了基于WSDL 2.0的標準化服務定義。WSDL 2.0定義在服務消費者和提供者之間提供了共享的協議,并作為JBI實現互操作能力的基礎。

??? 除了標準化的服務定義,JBI使用“通用化(normalized)”消息的概念支持全局組件互操作能力。消息通用化將協議與業務特定的上下文映射成一個通用的、可傳輸風格,這與EAI實現中經常使用的“規范(canonical)”消息表示概念非常類似。

??? 每個JBI容器存在于一個單獨的虛擬機中,并容納所有的BC和SE,容器提供了一組服務,為SE和BC實現提供操作性支持。

??? JBI也定義了基于JMX的標準控制集合,允許外部管理工具執行不同的系統管理任務,也可以管理組件本身。管理支持為以下情形提供了標準機制:

  • 安裝plug-in組件。
  • 管理plug-in組件的生命周期(啟動/停止等。)。
  • 部署服務器件給組件。

二、服務組件架構(Service component Architecture,SCA)

??? 盡管服務組件架構(SCA)被作為規范定義(該規范定義了使用面向服務架構構建系統的模型),但它是一個有效的模型(該模型用來將組件組合成服務),并為服務組合成解決方案提供了額外支持。

??? SCA基于2個主要的元模型:

  1. 類型元模型。
  2. 組合元模型。

類型元模型

??? 這個元模型(見圖2)描述組件類型、接口和數據結構。

JBI、SCA 簡述及對比

圖2 描述組件、接口和它們依賴的元模型

?

??? 一個組件實現由以下的4組規范定義:

  • 被提供的接口——組件定義的接口集。這些接口通常定義為WSDL端口類型或語言接口,如Java或C++。一個組件可以暴露0或多個接口。每個接口包含幾個方法。
  • 被要求的規范(引用)——組件實現使用的接口集。這些接口通常定義為WSDL端口類型或語言接口,如Java或C++。一個組件可以有0或多個接口。
  • 用來裁剪或自定義組件行為的屬性。每個屬性定義為一個屬性元素。一個組件可以包含0或多個屬性元素。
  • 定義組件實現的實現元件。SCA允許很多不同的實現技術,如Java、BPEL、C++、SQL等。SCA為引入新的實現類型定義了擴展機制。

組合元模型

??? 這個元模型(見圖3)定義了組件實例,以及它們是如何連接的。

JBI、SCA 簡述及對比

?

圖3 組件實例和它們在組合元模型中的連接

?

??? 這個元模型中實例的概念有別于在OO中使用的實例概念。此處的組件實例是指一個帶有被完整解析的屬性集,為解決特殊問題而修改組件行為的組件實現。

??? 一個組合定義了很多組件實例,它們彼此交互,這里的交互使用連線(wire)來定義。

??? 在SCA中,連線使得絕大多數的底層代碼被抽出(與Indigo中的信道類似)。如,連線可以被定義同步的或異步的,支持組件調用的事務行為等。SCA在幕后處理這些底層細節。連線同樣可以在任意方向上連接2個不同的接口語言(如Java接口和WSDL 端口類型/接口),只要這2個接口定義的操作是等價的就行了。

??? 除了連線,SCA也支持通過特殊的組件類型,如導入(imports)和導出(exports),進行模塊間通信。連線、導入和導出組件的結合使得組件可以引用外部服務。

??? 組合元模型定義的組件組合,與服務組合既類似又不同,盡管兩者都定義了使組件/服務一起工作的方式。通過被組合本身引入的功能,服務組合增強了參與服務的功能;而這個元模型只定義組件(更接近于服務實現)間的連接。

??? SCA實現依賴于服務數據對象(Service Data Objects,SDO),它提供了表示數據的通用模型的技術。SDO是組件的數據交換基礎。SDO架構中的基本概念是數據對象——包含基本類型數據和(或)其它數據對象的容器。元數據提供了被包含數據的信息,它被數據對象顯式引用。在SDO中數據對象的組合由數據圖表示。除了對象本身,圖中還包含變更概要,用來記錄圖中數據對象和屬性在處理過程中變化的信息(類似微軟環境中的ADO)。除了SDO,SCA還引入了服務消息對象(Service message objects,SMO),它提供了服務間處理和交換消息的抽象層(類似JBI中的標準化消息)。

??? 如果GUI支持,SCA實現會非常強大,可以在面板上實現圖形化組件的連接。

?

三、SCA與JBI的主要異同

?

??? 1、相同點

  • 目的是一樣的:都是為了集成。
  • 大致方向一樣:都是為了將服務和傳輸協議解耦。

??? 2、不同點

  • JBI是以請求消息和相應消息作為切入點,在集成時將消息和傳輸協議解耦,形成一種與傳輸協議無關的標準消息,這樣形成一種全新的區別于現有應用服務器的集成容器,是從容器的角度出發,一種全新的容器模型。
  • SCA以接口作為切入點,從組件接口層將傳輸協議和接口實現解耦,是從編程的角度出發,一種全新的編程模型。

JBI、SCA 簡述及對比


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 毛片96视频免费观看 | 麻豆成人精品国产免费 | 国内精品不卡一区二区三区 | 亚洲精品99久久久久久 | 四虎亚洲精品 | 国产亚洲欧美久久久久 | 色婷婷免费视频 | 操操网站 | 亚洲欧美精品久久 | 国内精品视频九九九九 | 一级免费片 | 欧美日韩一级片在线观看 | 日本久久免费 | 久久精品国产无限资源 | 欧美成人精品在线 | 欧美一级特毛片 | 久久精品re | 99视频精品全部免费免费观 | 亚洲天天做日日做天天欢毛片 | 日本高清不卡在线观看 | 亚洲精品精品 | 性xxx免费视频 | 看免费黄色一级视频 | 久操热久操 | 国产美女亚洲精品久久久久久 | 五月婷婷在线免费观看 | 久久国产国内精品对话对白 | 老司机午夜在线 | 国内久久久久高清影视 | 亚洲五月婷 | 国产尤物福利视频在线观看 | 亚洲视频一区二区在线观看 | 国产一区二区精品在线观看 | 国产成人亚综合91精品首页 | jizz老妇乱| 理论片黄色 | 亚洲精品国产一区二区 | 久久久久久久久免费影院 | 日韩亚洲精品不卡在线 | 久久精品国产福利国产秒 | 成人免费淫片在线费观看 |