隨筆-128  評論-55  文章-5  trackbacks-0
          -、國內(nèi)發(fā)展現(xiàn)狀和應(yīng)用需求
              SOA幾乎已經(jīng)成為企業(yè)應(yīng)用架構(gòu)的主流,從2006年6月22日計(jì)算機(jī)世界“中間件應(yīng)用年會”上可以看出,大部分主題演講都涉及到SOA的應(yīng)用和部署問題,IBM當(dāng)前不僅以服務(wù)商的角色介入SOA,而且在此次大會上還帶來了眾多的SOA的成功實(shí)施案例;BEA公司也定位于SOA平臺提供商,并且推出了一系列產(chǎn)品和方案;國內(nèi)軟件企業(yè),像中創(chuàng)、東方通科技以及金蝶、用友、科諾等公司也在不同程度地切入SOA工具或解決方案的開發(fā)。種種跡象表明,SOA已經(jīng)超越概念走向應(yīng)用,并逐漸形成一股不可阻擋的潮流。


          二、Web Services開源熱火朝天

          1.Web Services開源項(xiàng)目
              作為SOA一種主要實(shí)行方式的Web Services,其開源項(xiàng)目正如火如荼。

              Java6 發(fā)布,支持XML&WebService, JDK就直接支持Web Services了。這樣Sun強(qiáng)勢參與Web Services的競爭。這種現(xiàn)象很有趣,各大廠商在各自強(qiáng)項(xiàng)之間互相滲透,Sun被Apache Harmony項(xiàng)目所逼,被一些廠商要求兩年后,將JDK開源,但同時也給IBM、BEA、Oracle等廠商反戈一擊,在剛發(fā)布的JDK 6中捆綁Web Services。

              Axis2和XFire是最火的兩個Web Services開源項(xiàng)目,但其他的項(xiàng)目也做得不錯。

          XFire
          Celtix
          Mule
          Apache Axis2
          Apache CXF
              XFire和Celtix合并,在Apache下形成的一個新的孵化項(xiàng)目。
          Apache Ode
              是一個WS-BPEL實(shí)現(xiàn)
          Apache Rampart
              是一個WS-Security實(shí)現(xiàn)
          Apache Sandesha2
              是一個WS-ReliableMessaging實(shí)現(xiàn)
          Apache Tuscany
              是一個SCA實(shí)現(xiàn)。
          Apache ServiceMix
              是一個JBI實(shí)現(xiàn)。

          Eclipse的STP(SOA Tooling Project)子項(xiàng)目
          此Eclipse項(xiàng)目旨在提供一個其他開發(fā)人員可以使用的SOA開發(fā)工具框架,以便使他們不必自己開發(fā)這些工具。

          2.Web Services開源項(xiàng)目特點(diǎn):
              1)各項(xiàng)目側(cè)重點(diǎn)有些不一樣,還互相引用,交流甚多,人員合作也較多。不像Sun JDK開源和Apache Harmony,Apahce Geronomy和JBOSS等幾乎重疊,正面沖突。

              2)這些項(xiàng)目都支持Spring的Bean配置或擴(kuò)展Spring的接口,和Spring集成。可見Spring火爆程度。不同開源社區(qū)不斷融合,互相吸引人氣。
              3)使用工具的變化
              版本管理工具由cvs變?yōu)閟ubversion
              build工具由ant變?yōu)閙aven
              4)眾多開源社區(qū)中Apache的人氣最旺
              有意思的是,很多開源項(xiàng)目在別的小社區(qū)發(fā)展到2.0, 3.0版本后還不遺余力地遷移到Apache, 如ServiceMix從Codehaus搬到Apache,Codehaus的XFire和objectweb的Celtix合并后,喬遷到Apache。它們甚至甘愿接受Apache社區(qū)的規(guī)定:需要一段時間的修煉才能從孵化器中畢業(yè)。

          3.微軟Indigo
              說了這么多JAVA陣營的Web Services項(xiàng)目,還得提一下巨人微軟的策略。
              Indigo是微軟用于構(gòu)建面向服務(wù)應(yīng)用程序的代號,后被正式命名為Windows Communication Foundation。Indigo允許目前創(chuàng)建面向?qū)ο髴?yīng)用程序的開發(fā)人員采用 .NET Framework以相似的方式來創(chuàng)建面向服務(wù)的應(yīng)用程序。同時為了讓這些應(yīng)用程序能夠與運(yùn)行在 Windows 和其他平臺上的軟件有效地進(jìn)行交互,Indigo 還實(shí)現(xiàn)了SOAP和其他Web服務(wù)技術(shù),這樣開發(fā)人員就可以創(chuàng)建可靠、安全且能夠與運(yùn)行在任何系統(tǒng)上的軟件實(shí)現(xiàn)互操作的事務(wù)型服務(wù)。

          為了實(shí)現(xiàn)基本通信以外的功能,Indigo 采用了一些更新的WS-* 規(guī)范。這些文檔定義了用于添加可靠消息傳輸、安全性、事務(wù)以及更多基于 SOAP 的 Web 服務(wù)的多供應(yīng)商方式。所有這些規(guī)范最初均是由 Microsoft、IBM 及其他供應(yīng)商共同制定的。隨著它們?nèi)諠u穩(wěn)定,所有權(quán)通常會轉(zhuǎn)移到一些標(biāo)準(zhǔn)機(jī)構(gòu),如結(jié)構(gòu)化信息標(biāo)準(zhǔn)促進(jìn)組織 (OASIS)。Indigo 第一版中支持的 Web 服務(wù)規(guī)范包括 WS-Addressing、WS-Policy、WS-MetadataExchange、WS-ReliableMessaging、WS-Security、WS-Trust、WS-SecureConversation、WS-Coordination、WS- AtomicTransaction 和 SOAP 消息傳輸優(yōu)化機(jī)制 (MTOM)。

              Indigo已經(jīng)包含在Vista之中。

              目前Web Services的實(shí)現(xiàn)分為兩大陣營,一是微軟,一是Java廠商。這兩大陣營實(shí)現(xiàn)Web Services規(guī)范的產(chǎn)品都在互相進(jìn)行互操作性測試。


          三、這一年各開源項(xiàng)目廣泛實(shí)現(xiàn)的web services規(guī)范
              括弧里的開源項(xiàng)目支持前面的規(guī)范及其新版本。

          SOAP 1.2(Axis2 1.1)
          WSDL 2.0(XFire 1.2.2)
          JAX-WS 2.0(Celtix 1.0)
          WS-Policy(Axis2 1.1)
          MTOM(Axis2 1.1)
          XOP(Axis2 1.1)
          WS-RM(Celtix 1.0、Apache Sandesha2、Axis2 1.1)
          WS-Addressing(Axis2 1.1、Celtix 1.0)
          WS-Security(Apache Rampart、Axis2 1.1)
          SAAJ 1.1(Axis2 1.1、Celtix 1.0)
          JBI(ServiceMix 3.0.1,Celtix 1.0僅集成,XFire 1.2.2僅集成,Mule)
          SCA(Tuscany)
          WS-BPEL(Apache Ode、ServiceMix 3.0.1)


          四、爭論與融合
          1. SOAP和REST正走向融合
              基于SOAP和WSDL的Web Services規(guī)范多而復(fù)雜,雖然它是標(biāo)準(zhǔn)的,但是用戶頭疼,學(xué)習(xí)曲線陡而長,應(yīng)用構(gòu)建時間長。簡單就是美,易用性是金。在java企業(yè)應(yīng)用開發(fā)領(lǐng)域, EJB的沒落,Spring框架的興起和流行印證了這一規(guī)律。同樣,在SOA領(lǐng)域這一規(guī)律也已起作用,興起了另一種簡單的實(shí)現(xiàn)——REST,雖然它不是標(biāo)準(zhǔn)的。

              其實(shí)REST和SOAP各有所長。REST簡單、易用,與互聯(lián)網(wǎng)思想一脈相承,核心思想是資源共享、面向資源的Web Services。而SOAP是廣為接受的標(biāo)準(zhǔn),在互操作性方面,解決復(fù)雜的系統(tǒng)集成方面優(yōu)勢明顯,其核心思想是面向活動的Web Services。

              以前,REST和SOAP的爭論異常激烈。如google選擇SOAP;而Amazon 85%的web services應(yīng)用采用REST,15%采用SOAP。

              但慢慢地廠商變得越來越聰明,逐步擺脫理論上的爭論,看重實(shí)際的接受度。如微軟的Web Services項(xiàng)目Indigo去年底宣布支持REST;Apache Axis2同時支持SOAP協(xié)議棧和REST,而且二者可互相通訊。
              同時,SOAP族的Web Services規(guī)范新版本開始支持REST的特性(http get/post),如WSDL 2.0和SOAP 1.2

              真所謂分久必合,合久必分。SOAP和REST正走向融合。
                 
          2. JBI和SCA之爭
              SUN陣營支持JBI,而BEA、IBM、SAP、SIEBEL支持SCA。隨著7月初SUN公司的加入SCA/SDO國際構(gòu)件標(biāo)準(zhǔn)組織,標(biāo)志著Sun將逐步放棄自己的JBI,預(yù)示著Java和JavaEE將在未來五年內(nèi)逐漸退出‘解決客戶關(guān)鍵問題的主流技術(shù)’的地位。
              其實(shí)不少JBI和JCA專家組的成員更傾向于JBI,但是IBM等不喜歡SUN控制JAVA,不愿看到將來SUN控制SOA的商業(yè)應(yīng)用。其實(shí)JBI是好東西,被犧牲了。不過,SUN如果早點(diǎn)將JDK開源,避壟斷JAVA之嫌,就不會這么孤立。


          3. JAX-WS2.0 替換JAX-RPC 1.1
              JAX-WS2.0即Java API for XML Web Services (JAX-WS) 2.0,JAX-RPC 1.1即Java API for XML-Based RPC (JAX-RPC) 1.1。它們都是sun公司的使用 Java 技術(shù)開發(fā) Web 服務(wù)的規(guī)范,前者是后者的升級版本。
              JAX-WS2.0的binding層用JAXB(JSR 222),xml解析層用StAX(JSR 173),完全基于標(biāo)準(zhǔn),性能得到大幅提升;支持Java 5的注釋(annotation),容易開發(fā)。
             


          五、總結(jié)
          1. SOA是未來企業(yè)的IT應(yīng)用模式
              而在SOA創(chuàng)造的商業(yè)世界里,企業(yè)將有機(jī)會像玩積木(網(wǎng)絡(luò)服務(wù)構(gòu)件就是積木)游戲一樣創(chuàng)造嶄新的商業(yè)模式,從不同廠商購買網(wǎng)絡(luò)服務(wù),編排和組裝自己的應(yīng)用。IT的收費(fèi)方式不是整個產(chǎn)品,也不是按CPU、license收費(fèi),而是按網(wǎng)絡(luò)服務(wù)調(diào)用次數(shù)收費(fèi)。靈活、總體擁有成本將大大降低,將注意力集中于自身的商業(yè)邏輯。
              同時,經(jīng)歷十幾年、二十幾年的IT建設(shè),企業(yè)擁有了各種各樣的系統(tǒng),c++、java、c、cobra寫的各種各樣的遺留系統(tǒng),保護(hù)企業(yè)以前的投資,構(gòu)建出新的應(yīng)用,這樣的需求越來越多、越來越強(qiáng)烈。而這正是SOA發(fā)揮作用的舞臺,SOA可提供跨平臺、跨語言的、可擴(kuò)展的、可靠和安全的網(wǎng)絡(luò)服務(wù)。
              Gartner預(yù)測,到2008年,75%的新企業(yè)應(yīng)用將采納SOA。

          2. ESB(企業(yè)服務(wù)總線)的淡出
               ESB這一概念將會淡出,SOA治理、策略(policy)和SOA Network、SOA Repository正在興起。

          3. SOA應(yīng)用趨勢
               總結(jié)一句,SOA的應(yīng)用大潮將至,SOA中間件產(chǎn)品的競爭越來越激烈。IBM 11月1日宣布在北京和印度成立SOA全球解決方案中心。這標(biāo)志著SOA應(yīng)用競爭的升級。


          Author: orangelizq
          email: orangelizq@163.com

          歡迎大家訪問我的個人網(wǎng)站 萌萌的IT人
          posted on 2007-07-27 14:50 桔子汁 閱讀(236) 評論(0)  編輯  收藏 所屬分類: Web Service
          主站蜘蛛池模板: 郸城县| 札达县| 灌云县| 辰溪县| 滕州市| 大厂| 四会市| 滦平县| 双鸭山市| 甘孜县| 阿图什市| 二连浩特市| 永丰县| 牟定县| 若尔盖县| 衡水市| 马边| 广宗县| 江达县| 南郑县| 镇平县| 河东区| 琼结县| 金湖县| 拉萨市| 杭州市| 漾濞| 项城市| 商南县| 娄烦县| 凯里市| 汤原县| 吉隆县| 七台河市| 武陟县| 临桂县| 禄丰县| 荔波县| 罗甸县| 仪陇县| 海丰县|