<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Ryan's Java world!

    something about Java and opensource!

    BlogJava 首頁 新隨筆 聯(lián)系 聚合 管理
      51 Posts :: 25 Stories :: 59 Comments :: 0 Trackbacks
    書籍瀏覽:面向服務(wù)架構(gòu)(SOA)--概念、技術(shù)和設(shè)計

    時間:2005-11-11
    ?作者:David Karr


    《Service-Oriented Architecture——Concepts, Technology, and Design》是Thomas Erl所著的《Service-Oriented Architecture——A Field Guide to Integrating XML and Web Services》一書的后續(xù)。它不論從內(nèi)容上來看還是從重量上來看,都不是一本輕松讀物。它最初是以精裝本的形式出版的,這對于技術(shù)書籍來說是不常見的。它共有792頁。您可以將這本書視為SOA的羅賽塔石碑(Rosetta Stone,破譯了古埃及文字),它澄清了SOA的概念和對它的誤解、在部署SOA時要使用哪些組件、進行哪些考慮,并將其與其他架構(gòu)作了比較。

    簡介

      本書是Thomas Erl所著的《Service-Oriented Architecture——A Field Guide to Integrating XML and Web Services》一書的后續(xù)。它不論從內(nèi)容上來看還是從重量上來看,都不是一本輕松讀物。它最初是以精裝本的形式出版的,這對于技術(shù)書籍來說是不常見的。它共有792頁。您可以將這本書視為SOA的羅賽塔石碑(Rosetta Stone,破譯了古埃及文字),它澄清了SOA的概念和對它的誤解、在部署SOA時要使用哪些組件、進行哪些考慮,并將其與其他架構(gòu)作了比較。

      前一本書主要集中于面向服務(wù)架構(gòu)的啟用,涉及到XML和Web Services的集成。在某些地方暗示了采用SOA的好處,但并未明說。

      本文將描述的這本書則會打開SOA的大門,說明Web Services的作用,并介紹SOA的一些特性,這些特性Web Services并沒有以開箱即用的形式提供,而是讓用戶自行設(shè)計。

      它詳細地介紹了主要的WS-*擴展、這些擴展相互之間的關(guān)系,并推薦了一些具體的開發(fā)SOA的流程,從規(guī)劃到分析直到具體的接口設(shè)計。

      延續(xù)前一本書的模式,它對技術(shù)平臺的實現(xiàn)介紹得比較少,而是把重點放在SOA和Web服務(wù)的設(shè)計上。但是,在最后一章中,它從一個比較高的層面上,概覽了支持SOA的J2EE和.NET平臺中的架構(gòu)組件。

      雖然介紹實際平臺支持的最后一章與面向服務(wù)的分析和設(shè)計內(nèi)容關(guān)系不大,但是從前言中(大家應(yīng)該都是從前到后按順序閱讀的吧?)可以看出,作者對這方面內(nèi)容的研究實際上是本書要闡明的其他概念的基礎(chǔ)。有了這個基礎(chǔ),作者才能集中于實際平臺所支持的概念。

      在這本書中,將通過對兩個互相之間通過電子商務(wù)來往的虛構(gòu)公司(到最后,一個公司甚至決定收購另一個公司)的案例分析來說明一些原理。

      接下來,我將對這本書的章節(jié)及其主旨做一摘要。

    第一部分:SOA和Web Services基礎(chǔ)知識

      在這本書后面提供了關(guān)于WS-*擴展和具體的SOA開發(fā)流程的細節(jié)。而第一部分則介紹了必要的基本概念。

      這些基本概念的基礎(chǔ)是所謂的“基本SOA”和“現(xiàn)代SOA”。基本SOA表示使用“普通的”Web服務(wù)所能做到的,而現(xiàn)代SOA則更注重于將Web服務(wù)用作策略的一部分的實際SOA。然后它介紹了能夠代表好的面向服務(wù)架構(gòu)的特征的一些特性。第三部分和第四部分將更詳細地說明這些特征。

      首先,書中暗示,市場上沒有關(guān)于Web Services的常規(guī)書籍。書中沒有重復(fù)對SOA概念的各種不同解釋,而是通過說明關(guān)于SOA和Web Services的幾個被誤解的概念,指出了SOA不是什么。它描述了幾種其他的軟件架構(gòu),比如“客戶/服務(wù)器”、“分布式互聯(lián)網(wǎng)”和面向?qū)ο蠹軜?gòu),并解釋了這些架構(gòu)所提供的特性,以及為什么它們不是SOA。

      本部分還總結(jié)了涉及到SOA和Web Services以及它們之間的關(guān)系的標(biāo)準組織。

    第二部分:SOA和WS-*擴展

      本部分包括兩章內(nèi)容,介紹了基本W(wǎng)S-*擴展,詳細說明了這方面的概念及其相互之間的關(guān)系,以及這些概念如何支持現(xiàn)代SOA原理。

      這部分的第一章從對消息交換模式即MEP的討論開始,比如“請求/響應(yīng)”、“fire-and-forget”,以及更復(fù)雜的“發(fā)布/訂閱”。談到了MEP與SOAP、WSDL和SOA的關(guān)系。然后又討論了一些概念,如:協(xié)調(diào)、原子事務(wù)、業(yè)務(wù)活動、編制(Orchestration)和編排(Choreography),以及這些概念與SOA的關(guān)系和對SOA的作用。還簡要提到了這些概念與旨在支持它們的WS-*擴展之間的關(guān)系。

      接下來的一章在結(jié)構(gòu)上與前一章類似,介紹了尋址、可靠消息傳遞、關(guān)聯(lián)、策略、元數(shù)據(jù)交換、安全性和Notification/Eventing的概念,并簡要說明了支持這些概念的WS-*擴展。

    第三部分:SOA和面向服務(wù)

      這部分首先討論了服務(wù)的設(shè)計和面向服務(wù)原理的使用。

      這部分的第一章探討了一個要點(可能是整本書中最重要的),即前面所確定的SOA的特性。重要的是,在插入Web服務(wù)時,應(yīng)該以開箱即用的形式實現(xiàn)一些基本SOA的特征(如“服務(wù)契約”和“服務(wù)抽象”)。但是,一些基本SOA的特征(如“可重用性”和“無狀態(tài)性”)除非通過顯式設(shè)計才能實現(xiàn)。這一點也在本書的其他地方多次得以驗證。這很可能會使實現(xiàn)Web服務(wù)就會魔法般地產(chǎn)生SOA的神話破滅。

      這部分的第二章首先介紹了SOA的特性以及Web服務(wù)和WS-*擴展對那些特征造成了何種影響。然后就引出了服務(wù)設(shè)計中的服務(wù)層的概念。其基本理念是,設(shè)計良好的服務(wù)應(yīng)該是應(yīng)用層、業(yè)務(wù)層或編制層這些服務(wù)層其中一個的一部分。還介紹了這些層之間的關(guān)系,以及每一層都有哪些服務(wù)。

    第四部分:構(gòu)建SOA(規(guī)劃和分析)

      這一部分的三章內(nèi)容是關(guān)于在現(xiàn)代SOA中,為將業(yè)務(wù)和應(yīng)用邏輯安排到服務(wù)候選者而進行的規(guī)劃和分析。

      第一章介紹了三種可能的SOA交付策略,它們都與從分析SOA到設(shè)計SOA都要用到的高級策略有關(guān)。這三種方法分別是:top-down、bottom-up和agile。

      top-down策略可以描述為“首先分析”,而bottom-up策略可以描述為“依次設(shè)計服務(wù),以滿足應(yīng)用需求”。這兩種策略都要進行一些權(quán)衡。

      這一章以對agile策略的討論結(jié)束,它被視為是對其他兩種策略的一種比較好的折衷而推薦使用。這種方法可以描述為“迭代開發(fā)”,它具有反復(fù)的分析和設(shè)計周期。

      接下來的兩章以前面所學(xué)到的原理為基礎(chǔ),引入了面向服務(wù)分析的理念。此時SOA交付策略應(yīng)該已經(jīng)選定。

      以明確定義業(yè)務(wù)服務(wù)而不是應(yīng)用服務(wù)為目標(biāo),面向服務(wù)分析的步驟以導(dǎo)出一組表示業(yè)務(wù)需求的服務(wù)操作候選者而宣告結(jié)束。有許多不同種類的業(yè)務(wù)服務(wù),以及任務(wù)或?qū)嶓w服務(wù)。它們因相互之間的關(guān)系而區(qū)分開來,在本書后面的部分我們將看到這兩類服務(wù)的開發(fā)流程的細微區(qū)別。

      本部分的最后一章描述了為SOA(由應(yīng)用層、業(yè)務(wù)層和編制層組成)建模服務(wù)候選者的基本步驟。在這一開發(fā)層面上,稱之為“候選者”是一個重要的特征,因為隨著開發(fā)的推進,情況可能會發(fā)生變化。與本書的其他章一樣,本章使用了來自連續(xù)的案例分析的幾個非常詳細的例子。除了流程步驟外,還描述了每一步以及整個流程應(yīng)該考慮的一些建模指導(dǎo)原則。這包括針對增強和規(guī)劃候選服務(wù)的重用、均衡對需求的影響以及開發(fā)和遵循服務(wù)建模標(biāo)準的指導(dǎo)原則。

      接下來討論了面向服務(wù)企業(yè)的概念,它是指業(yè)務(wù)邏輯的單元,這些業(yè)務(wù)邏輯被安排為構(gòu)件塊(稱為服務(wù)建模單元),其作用域?qū)哟螐幕緲I(yè)務(wù)活動到企業(yè)業(yè)務(wù)流程。這看起來與前一本書(《ented Architecture——A Field Guide to Integrating XML and Web Services》)的第十四章“Building the Service-Oriented Enterprise (SOE)”(構(gòu)建面向服務(wù)企業(yè))的內(nèi)容類似。區(qū)別在于本書中的這一章并未討論這些概念性的作用域到更具體的Web服務(wù)操作、服務(wù)和集成架構(gòu)的作用域的映射(雖然它也引用了與那本書中相同的一幅圖,用來描述這些概念)。

      本章以一個非常詳細的案例分析結(jié)束,它說明了服務(wù)建模的方法。

    第五部分:構(gòu)建SOA(技術(shù)和設(shè)計)

      本部分由兩個子部分組成。第一部分比較大,由四章組成,重點介紹面向服務(wù)設(shè)計。接下來的一章又回顧了WS-*擴展,但是這次的重點放在接口的細節(jié)上,最后一章將中立地概述J2EE和.NET兩種基本開發(fā)平臺對面向服務(wù)架構(gòu)的支持。

      關(guān)于面向服務(wù)設(shè)計的第一章,首先概述了面向服務(wù)設(shè)計的目標(biāo),然后介紹了一組步驟,用于將候選服務(wù)劃分到服務(wù)類型(如:“實體”、“應(yīng)用”和“任務(wù)”)中,并選擇應(yīng)該用于設(shè)計中的核心SOA標(biāo)準和SOA擴展。該章的許多地方都有對XML Schema的語法基礎(chǔ)的介紹,因為這關(guān)系到WSDL。該章最后討論了從自動生成到硬編碼的WSDL編寫策略,以及對WSDL設(shè)計工具的要求。

      關(guān)于面向服務(wù)設(shè)計的第二章更詳細地介紹了服務(wù)層和前一章所述的SOA標(biāo)準/擴展。在決定面向服務(wù)架構(gòu)的服務(wù)層時,有一些實際的方面需要考慮。這些方面主要是有關(guān)性能、部署和管理的。接下來是在將若干個核心XML組件和WS-*擴展結(jié)合到SOA中的過程中會遇到的一些實際問題。例如,提到了使用來自多個源的自動生成XML所帶來的不一致問題。還提到了WS-I Basic Profile中的SOAP和WSDL文檔設(shè)計標(biāo)準。還談到了在SOA上下文中使用XML Schema、SOAP、WSDL和UDDI的設(shè)計標(biāo)準。本章最后給出了選擇WS-*擴展的一些簡要的指導(dǎo)原則(集中于WS-BPEL)。

      關(guān)于面向服務(wù)設(shè)計的第三章則深入介紹了應(yīng)用服務(wù)層和業(yè)務(wù)服務(wù)層的細節(jié),描述了設(shè)計應(yīng)用服務(wù)、以實體為中心的服務(wù)以及以任務(wù)為中心的服務(wù)的具體步驟。每一套步驟都附有使用該套步驟的詳盡的案例分析。本章最后給出了一些設(shè)計這些服務(wù)的指導(dǎo)原則,比如使用命名標(biāo)準、注重于粒度性和可擴展性、識別當(dāng)前和未來的服務(wù)請求者、使用模塊化WSDL,以及使用元數(shù)據(jù)說明服務(wù)。

      關(guān)于面向服務(wù)設(shè)計的最后一章集中于最后一個服務(wù)層,編制層,以及可能用于實現(xiàn)編制層的WS-BPEL和WS-Coordination標(biāo)準的語法元素。編制層的流程服務(wù)也有類似于前一章的逐步設(shè)計流程。并使用了一個詳盡的案例分析例子,該例子使用WS-BPEL定義一個流程服務(wù)。

      在四章關(guān)于關(guān)于面向服務(wù)設(shè)計的內(nèi)容之后,接下來的一章深入介紹了幾個基本W(wǎng)S-*擴展(即:WS-Addressing、WS-ReliableMessaging、WS-Policy、WS-MetadataExchange和WS-Security)的語法元素方面的細節(jié)。附有幾個詳盡的案例分析例子,這些例子使用所有這些擴展定義服務(wù)。所有這些例子都是第二部分中相同例子的延續(xù),第二部分中的例子說明了WS-*的概念,而這些例子則指出了那些概念的語法細節(jié)。這么做是為了使分析人員和開發(fā)人員可以集中于書的不同部分,但是如果您能夠同時從兩個視角理解這些例子,您會獲益更多。

      最后一章首先綜 述了在開發(fā)和運行時實際的SOA平臺必須提供的高級組件和塊,然后以對J2EE和.NET中的SOA支持的切實中立的概述收尾。

    結(jié)束語

      總而言之,如果您要了解面向服務(wù)架構(gòu),想知道它是什么、它不是什么、它是什么樣的、如何實現(xiàn),那么本書將為您提供獨特而令人感興趣的內(nèi)容,以及對一些您曾經(jīng)遇到困難的概念的簡要歸納。

    原文出處:

    Book Review: Service-Oriented Architecture - Concepts, Technology, and Design

    http://dev2dev.bea.com/blog/dkarr/archive/2005/09/book_review_ser.html

    ?

    ?作者簡介
    David Karr是美國華盛頓互惠銀行(Washington Mutual)技術(shù)解決方案團隊的一名軟件工程師,他專攻J2EE、XML、Web Services和Unix技術(shù)。他是SUN認證的企業(yè)架構(gòu)師,還是Struts-EL標(biāo)簽庫的創(chuàng)建者。目前他是西雅圖BEA User Group的負責(zé)人。
    posted on 2006-05-09 15:20 冰雨 閱讀(1088) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     

    JSF中文技術(shù)文摘
    主站蜘蛛池模板: 亚洲制服丝袜精品久久| 亚洲&#228;v永久无码精品天堂久久| 亚洲日本在线观看视频| 亚洲AV无码之国产精品| 午夜免费福利网站| 亚洲中文字幕无码中文| 无码永久免费AV网站| 亚洲xxxx视频| 大学生一级毛片免费看| 亚洲第一成人在线| 毛片视频免费观看| 亚洲а∨精品天堂在线| 又色又污又黄无遮挡的免费视| 免费手机在线看片| 亚洲午夜爱爱香蕉片| 国内精品免费在线观看| 亚洲人成亚洲精品| 国产香蕉免费精品视频| 国产亚洲精品bv在线观看| 永久黄网站色视频免费观看 | 亚洲VA中文字幕不卡无码| 中国极品美軳免费观看| 亚洲AV无码专区国产乱码电影| 亚洲一区二区在线免费观看| 亚洲精品中文字幕麻豆| 成人性生免费视频| 国产免费久久久久久无码| 国产精品亚洲片在线| 国产精品爱啪在线线免费观看| 亚洲天堂免费在线| 亚洲不卡无码av中文字幕| 成人免费区一区二区三区| 亚洲成aⅴ人片在线影院八| 免费鲁丝片一级观看| 国产日韩在线视频免费播放| 久久亚洲精精品中文字幕| 午夜视频在线在免费| 你是我的城池营垒免费看 | 亚洲女初尝黑人巨高清| 成年人免费的视频| 暖暖免费中文在线日本|