cuiyi's blog(崔毅 crazycy)

          記錄點滴 鑒往事之得失 以資于發(fā)展
          數(shù)據(jù)加載中……

          soa雜感系列一:色解SCA(reference to qqgroup & articles on network)

          米布(8101690) 23:08:08

          大家有沒有想把 axis 嵌到自己產品中去的?

           

          我有一個理想(24332715) 23:08:13

          如果SCA構件分布式的部署在多個應用服務器上,那么在裝配中

           

          我有一個理想(24332715) 23:08:24

          SCA的服務結構

           

          我有一個理想(24332715) 23:08:35

          接口

           

          我有一個理想(24332715) 23:08:43

          使用WS定義

           

          我有一個理想(24332715) 23:08:57

          那么裝配出來的應用效率是不是很低

           

          david(172171) 23:09:12

          可以認為SCA的容器是一個bean

           

          我有一個理想(24332715) 23:09:47

          沒懂

           

          david(172171) 23:10:52

          sca容器宿主在Tomcat,通過sca可以引用其它分布的應用

           

          david(172171) 23:11:40

          SCA宿主:啟動SCA裝配過程的系統(tǒng)


          米布

          (8101690) 23:11:24

           

          我能否用 bpel 流程來引用SCA呢?

           

          david(172171) 23:11:42

          可以

           

          david(172171) 23:12:02

          這個問題在那個群里已經討論過了

           

          我有一個理想(24332715) 23:12:23

          通過宿主進行的引用?

           

          david(172171) 23:12:28

           

          david(172171) 23:12:30

          http://blog.csdn.net/teamlet/archive/2007/03/22/1537510.aspx

           

          我有一個理想(24332715) 23:12:37

          謝謝

           

          david(172171) 23:12:56

          從這個圖中可以看出 SCA中的componentbpel的關系

           

          david(172171) 23:13:52

          scacomponent/(composite: cuiyi add)對外提供粗粒度的接口,bpel通過implementation提供細粒度的實現(xiàn)

           

          david(172171) 23:14:09

          scabpel更高層次的抽象(bpel is implement technology, sca is a component, compent is interfaces, one for expose, another for reference,就是下面的棍/坑說啦,cuiyi add)。

           

          我有一個理想(24332715) 23:14:38

          bpelSCA的服務實現(xiàn)

           

          我有一個理想(24332715) 23:14:45

          是一種

           

          我有一個理想(24332715) 23:14:50

          這么理解對嗎?


          david(172171) 23:15:10

          是的,是其中的一種

           

          david(172171) 23:14:57

          component只不過是sca裝配模型中最基本的組件單元,上面還有composite,domain

           

          david(172171) 23:15:36

          想用bpel調用sca是可以的,但是大才小用了

           

          david(172171) 23:16:45

          實現(xiàn)包括 , C++, PHP, Java Script, BPEL, SQL, XQuery, Composite,ruby

           

          david(172171) 23:17:12

          當然還有java

           

          我有一個理想(24332715) 23:49:42

          SCA Component 它有一個殼上ServiceReference,property,殼里邊包含的東西連接著Service,Reference,property,殼里邊的東西就是這個Componentimplementation(not exactly, cuiyi add),implementation可以是很多東西,javac++等等什么都行,這么理解對不對。

           

          兩塊田(7739638) 23:52:39

          很對

           

          我有一個理想(24332715) 23:56:40

          殼上的Service就是指出來的棍(凹進去的坑,引用找服務,就像棍插坑,cuiyi add),Reference就是凹進去的坑(凸出來的棍),棍插坑,坑插棍,幾個連一起,還有坑還有棍這時候是合成組件(Composite),對不?

           

          兩塊田(7739638) 23:57:14

          說得有點色了~:)

           

          我有一個理想(24332715) 23:57:23

          哈哈

           

          我有一個理想(24332715) 23:58:33

          再整幾個只有棍的,還有只有坑的,把Composite的棍和坑插滿,就是系統(tǒng)域(Domain)

           

          兩塊田(7739638) 00:11:24

          兄弟研究棍和坑研究得挺深啊.

           

          我有一個理想(24332715) 00:11:38

           

          兩塊田(7739638) 00:12:02

          重要的是可以插進去,插出來又可以用到別的坑里~:)

           

          我有一個理想(24332715) 00:13:48



          the following add by cuiyi, 系引用


          開-閉”原則(Open-Closed Principle)是面向對象的可復用設計(Object Oriented Design或OOD)的基石。其他設計原則(里氏代換原則、依賴倒轉原則、合成/聚合復用原則、迪米特法則、接口隔離原則)是實現(xiàn)“開-閉”原則的手段和工具。 

          “開-閉”原則的定義

          定義:一個軟件實體應當對擴展開放,對修改關閉。
          ( Software entities should be open for extension,but closed for modification)。

          在設計一個軟件系統(tǒng)模塊的時候,應該使這個模塊可以在不被修改的前提下被擴展,或者說,可以在不必修改原來代碼的情況下改變這個模塊的行為。

          滿足“開-閉”原則的系統(tǒng)的優(yōu)點

          1)通過擴展已有的軟件系統(tǒng),可以提供新的行為,以滿足對軟件的新需求,使變化中的軟件系統(tǒng)有一定的適應性和靈活性。
          2)已有的軟件模塊,特別是最重要的抽象層模塊不能再修改,這就使變化中的軟件系統(tǒng)有一定的穩(wěn)定性和延續(xù)性。
          具有這樣兩個優(yōu)點的系統(tǒng)是一個在高層次上實現(xiàn)了復用的系統(tǒng),也是一個易于維護的系統(tǒng)。

          “開-閉”原則的實現(xiàn)——抽象化

          面向對象編程語言可以使用抽象的方法,為系統(tǒng)定義一個不再更改的抽象設計來作為系統(tǒng)的抽象層。這個抽象層覆蓋了所有未來可能擴展,因此在任何情況都不會改變。這樣使系統(tǒng)的抽象層保持不變,從而滿足了開閉原則的第二點:對修改關閉。

          由于從抽象層導出的一個或多個具體類可以改變系統(tǒng)的行為,因為系統(tǒng)的設計對擴展是開放的,從而滿足了開閉原則的第一點:對擴展開放。

          在SCA框架中,無論在commonj還是SPI;無論是composite還是component,都可以看到開閉原則的應用。

          remark by cuiyi

          I feel Component in SCA just a restriction according to DP, so exposed as interface or web service description language (XML), just made DP a restriction to developers, meanwile, the systems developed on it can be more extensice and integratable; 即:
          SCA 提供一個以與技術無關的方式定義接口、實現(xiàn)和引用的模型,從而使技術人員能夠將這些元素綁定到所選擇的某一技術的特定實現(xiàn)。

          例如,我們可以用 Java 定義我們的接口,將我們的實現(xiàn)作為 BPEL 流程加以應用,或者將接口作為一個 WSDL 文檔,而且我們的實現(xiàn)可以是一個 Java™ 類。下圖 演示了如何在 IBM WebSphere Process Server 中使用 SCA。
          圖. WebSphere Process Server 中的 SCA




          SCA的目的是使用戶在構建企業(yè)應用時有一個不再直接面對具體的技術細節(jié)的層次,而是通過服務組件的方式來構建應用。這種方式也使得客戶的企業(yè)應用具有良好的分層架構,能夠很好的分離應用的業(yè)務邏輯和IT邏輯,不但易于應用的構建,也易于應用的更改和部署。 

          ○分離業(yè)務邏輯和技術實現(xiàn)邏輯
          ○業(yè)務過程由松散耦合、可重用的組件或服務組成
          ○組件或服務與平臺和實現(xiàn)無關



          實際上呢,其就是對現(xiàn)有技術的再一次包裝,達到真正的屏蔽語言,我們來看看SOA規(guī)范理念,是如何達到屏蔽和包裝的:
          The image “http://gocom.primeton.com/uploads/FCKUserFiles/Image/1.JPG” cannot be displayed, because it contains errors.
          SCA規(guī)范包括了Assemble Model和Client Model兩部分。
          前者約定了如何將異種組件(Java類,BPEL,WebService)組裝并發(fā)布成SOA服務,這也是SCA最大的特點和最核心的概念;
          后者則約定了如何在異種語言環(huán)境中調用SOA服務。
          那么,通過這兩部分的規(guī)范,就可以完全解決了服務從服務端到客戶端的跨語言、跨實現(xiàn)技術的問題。

          其即將推出的DAS規(guī)范,也無非是我們現(xiàn)有技術的再次包裝,理念圖如下:
          The image “http://gocom.primeton.com/uploads/FCKUserFiles/Image/9.JPG” cannot be displayed, because it contains errors.
          這樣,客戶端看到的只是DataGraph中的DataObject就是我們說的SDO,而不再需要去關注或者操作所謂的JDBC等連接數(shù)據(jù)庫的、以及JCA等連接手段獲得的數(shù)據(jù)入口了。

          于是我們看到了,SOA通過SCA、SDO對現(xiàn)有技術進行了再次包裝或者屏蔽,從而達到了一個 大一統(tǒng) 的局面,但是尚未知對于大多的開發(fā)者來說這是否是一個好的消息。

          不過通過如下,我們發(fā)現(xiàn)并不是如此的悲觀:
          goCom SCA規(guī)范綜述


          posted on 2007-05-06 00:35 crazycy 閱讀(1249) 評論(2)  編輯  收藏 所屬分類: SOA、WebService、BPEL

          評論

          # re: 色解SCA(reference to qqgroup & articles on network)  回復  更多評論   

          SCA對于開發(fā)人員來說應該也是個非常不錯的東西,至少在基于SCA這樣的產品上實現(xiàn)企業(yè)應用集成會更加的實際..
          2007-05-06 17:07 | BlueDavy

          # re: 色解SCA(reference to qqgroup & articles on network)  回復  更多評論   

          @BlueDavy

          尚未接觸到企業(yè)應用集成的需求,針對目前項目和需求,用開源產品spring等已經足以勝任,呵呵
          2007-05-06 20:09 | crazycy
          主站蜘蛛池模板: 元江| 万荣县| 司法| 九龙坡区| 鹰潭市| 花莲县| 龙门县| 西吉县| 达日县| 科技| 理塘县| 老河口市| 开平市| 尉氏县| 绵阳市| 伊川县| 宁晋县| 景宁| 陇川县| 淳安县| 吉木乃县| 资阳市| 含山县| 出国| 青州市| 邢台市| 二连浩特市| 大方县| 灵寿县| 邵阳县| 陇川县| 同仁县| 临西县| 藁城市| 绥棱县| 平潭县| 胶州市| 肥城市| 元朗区| 特克斯县| 寻甸|