This Is A FineDay

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            93 隨筆 :: 0 文章 :: 69 評論 :: 0 Trackbacks

          SCA Service Component Architecture)編程模型

          ?

          1). 使用服務組件的客戶端可以選擇使用WSDL接口或Java接口。

          ?????? 服務組件提供給別的服務調用的入口叫Interface(接口)。而服務組件本身可能也需要調用別的服務,這個調用出口叫Reference(引用)。無論是接口還是引用,其調用規范都是WSDLJava接口。

          ?

          2).SCA 服務組件與傳統組件的主要區別在于:

          1 . 服務組件往往是粗粒度的,而傳統組件以細粒度居多。

          2 . 服務組件的接口是標準的,主要是WSDL接口,而傳統組件常以具體API形式出現。

          3 . 服務組件的實現與語言是無關的,而傳統組件常綁定某種特定的語言。

          4 . 服務組件可以通過組件容器提供QoS的服務,而傳統組件完全由程序代碼直接控制。

          ?

          3). 服務模塊(Module

          服務模塊(簡稱模塊)由一個或多個具有內在業務聯系的服務組件構成。把多少服務組件放在一個模塊中,或者把哪些服務組件放在一起主要取決于業務需求和部署上靈活性的要求

          ?

          4). 導入(Import)和導出(Export

          兩個特殊的"端點",一個是導入(Import),它的作用是使得模塊中的服務組件可以調用模塊外部的服務。另一個是導出(Export),它的作用是使得模塊外部的應用可以調用模塊中的服務組件。

          導入端點提供了四種綁定方式,包括:JMS綁定,Web Service綁定,SCA綁定和無狀態會話BEAN的綁定。導出端點提供了三種綁定方式,包括:JMS綁定,Web Service綁定和SCA綁定。

          ?

          5). 共享庫(Library

          共享庫包含的內容只有:數據定義,接口定義,數據映射和關系。與模塊最大的區別使共享庫不包含服務組件,因此也就不包含業務邏輯

          ?

          6).Standalone Reference

          模塊中的服務組件是不能直接被外部Java代碼使用的,Standalone Reference(端點)就是為了讓外部的Java代碼能夠使用模塊中的服務組件。這個端點只有引用(Reference),而沒有接口(Interface)。這個引用可以調用相應的服務組件。

          ?

          7). 同步調用和異步調用

          面對是基于粗粒度的服務組件,面對的是一些需要比較長時間才能有響應的應用場景,那么我們就需要一種非阻塞式調用方式,即異步調用方式。

          SCA 編程模式提供了三種方式的異步調用,它們分別是:

          1 . 單向調用方式。

          2 . 延遲響應方式。

          3 . 請求回調方式。

          ?

          8).SCA 客戶端的兩種調用方式

          從接口的角度,SCA的客戶端編程模型有兩種方式:

          1 . 靜態調用方式

          2 . 動態調用方式

          ?

          9). 接口類型與調用方式

          實際上客戶端采用哪種調用方式是與接口類型有密切的關系。當提供的接口類型是WSDL類型的,那么客戶端的調用方式只能是動態調用方式。由于WSDLSCA模型中主要的接口方式,這樣就導致動態調用方式在SCA編程模型中非常普遍。但是如果提供的接口類型時Java類型的,那么客戶端的調用方式可以是動態調用方式,也可以是靜態調用方式。

          posted on 2007-11-22 09:43 Peter Pan 閱讀(330) 評論(0)  編輯  收藏 所屬分類: J2EE
          主站蜘蛛池模板: 手机| 金乡县| 华容县| 焦作市| 迭部县| 肇庆市| 砀山县| 长泰县| 仪征市| 罗定市| 温州市| 沽源县| 敦煌市| 鹤峰县| 江都市| 剑阁县| 鹤庆县| 天柱县| 朝阳县| 大理市| 英吉沙县| 西华县| 清水县| 尤溪县| 渭南市| 承德市| 兰溪市| 渑池县| 高雄市| 乌鲁木齐县| 留坝县| 洛南县| 祁连县| 安龙县| 文山县| 仙桃市| 项城市| 长治县| 志丹县| 利川市| 敦化市|