• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 剖析實施關鍵 消除SOA誤解

    發表于:2007-06-13來源:作者:點擊數: 標簽:
    SOA不僅是技術架構 SOA在字面上的理解是面向服務架構,但是,在成功實施SOA后,你會清醒的認識到這不僅僅只是一種技術架構。而這一點非常重要的。事實上,SOA是關于業務流程建模的,它并不總是直接由技術組件支持。雖然服務可以由技術組件提供,但是業務流程

    SOA不僅是技術架構

    SOA在字面上的理解是面向服務架構,但是,在成功實施SOA后,你會清醒的認識到這不僅僅只是一種技術架構。而這一點非常重要的。事實上,SOA是關于業務流程建模的,它并不總是直接由技術組件支持。雖然服務可以由技術組件提供,但是業務流程本身比支持它的服務更為重要。SOA僅僅扮演推動者的角色,而技術并不會直接提供價值。服務不需要像EJBs或.NET組件那樣從編寫代碼開始,SOA技術應當是其他收益的推動者,例如改進和擴大重復使用,對于業務流程變化的更好響應,以及和業務流程更好結合等等。

    SOA不等于Web服務

    當SOA伴隨著Web服務一起走入我們的視線的時候,大部分的人將兩者混為一談。Web服務是SOA策略實施標準的一部分,但并不是必須的,而是可以基于HTTP之外其他的標準協議定義服務。通常情況下,服務的前后關系能夠幫助你定義它。例如,對于那些與核心業務處理相關的服務來說,采用Web服務的方式可能是有害的,因為在SOAP/HTTP協議上確保業務處理安全非常困難,而且很多服務可能會需要異步運作。在這種情況下,基于隊列和channels的消息系統可能更為合適。當然,有效載荷和界面仍然可以使用XML。

    在現有的基礎架構上實現SOA

    SOA的關鍵就在于對遺留系統的重復利用。很多企業都發現可以利用現有基礎架構實現SOA,例如,.NET和J2EE平臺都支持Web服務開發、解析和生成XML和MSMQ或JMS之類的消息系統通信,而關于SOA經常出現的一些誤解主要集中在流程管理和自動化層面。很多公司都已經在EAI(enterprise application integration)工具上投入了資金,EAI工具能夠作為流程自動化和管理層,它們可以從現有的或者建立在.NET/ J2EE上的應用訪問服務。

    SOA是不斷進化而來的方法理念

    SOA不是一種剛剛出現的、全新的解決方案,實際上SOA是一種結構和技術上的自然進化過程。系統結構處于持續不斷的調整發展之中,以便能夠更好地和業務相適應。設計人員和企業很早就意識到將技術和業務流程相結合的價值,這樣做能夠更好地使用技術資源,更好地支持業務。

    SOA技術的一部分是從企業結構理論發展而來的,更重要的是,它能夠透視整個企業中的業務和流程并分析出其中的關系,為技術決策提供依據。SOA工具的進化來源多樣,包括了互聯網技術(如HTTP和XML),集成技術(例如message busses、translation technologies和connectivity等)。

    流程自動化是SOA的優勢體現

    很多企業和技術人員都錯誤地將注意力集中在服務和如何在服務結構中提供服務上。而SOA真正的價值是作為一種業務自動化工具,軟件和系統是用于提高業務和企業效率的,因此可以根據企業的業務和活動來定義。對SOA來說,我們的注意力不應當集中在服務上,應該更關注流程,以及如何改進這些流程。

    SOA架構可能會非常復雜

    從某種角度看,SOA架構可以非常簡單。例如,開發一個業務流程或定義服務都是非常富有邏輯性的工作,而且比較簡單。然而,如果想更好地利用數據和服務,情況則可能復雜得多。例如,讓我們來設計一個訂單服務,用戶可以使用這個服務在系統里創建訂單,這非常簡單。但是如果你希望把訂單數據和其他服務的數據關聯起來,情況又會如何?如果所有的服務分享一個共同的數據源,也許你可以繞過服務層,并生成報告。但是,如果一些數據在自用的服務中,而另一些數據在以前遺留下來的主機系統中,其他一些數據在商業應用(例如SAP)中,把這些數據集中到一起就會變成一項非常復雜的工作。

    深入理解業務流程和業務數據變化

    因為SOA專注于業務流程,所以理解和這些業務流程相關的數據就變得非常重要。要能夠用一種標準的方法來描述這些信息,讓每一個參與到這個流程里的人都能夠理解這些數據所包含的信息內容。對于那些目前還沒有信息結構或者只有非常有限的信息結構的大型企業來說,這個問題在實施過程中可能會帶來很大的障礙。因為大型企業有很多數據,所以通常建議采用漸進式的方法來定義這些信息結構,而不是采用一步到位的方式。這就意味著你不需要花四年時間來定義完整的數據模型,只需要在服務開發過程中,花少量的時間來定義相關的數據就可以了。隨著各項服務的實施,相關的信息結構就會被逐步完善起來。]

    簡單或復合式的服務

    在一些情況下,所需要的服務非常顯而易見,在這種情況下服務非常簡單。然而,服務也可能非常復雜。這意味著“超級服務”可能提供一個標準界面,就如同我們的客戶定位服務一樣。如果所有的用戶信息都存儲在同一個庫中,這就方便了服務的查找。但如果有些客戶信息在某臺主機中,另一些在SAP中,其他的一些則散布在其他的應用中,而還有一部分存儲在Oracle數據庫中,那么情況會怎樣?假設我們已經從主機、SAP、其他應用或者Oracle數據庫中定位了這名客戶,我們的新定位客戶服務就能夠使用所有這些現有的服務來定位客戶了?,F在, 因為我們的服務需要調用其他服務,這就變成了一項復合式服務。當一個自動化流程模型擴展成一項服務的時候,也可能成為復合式服務。

    SOA中的自動化包含了多個層次范圍

    自動化可以在幾個層上發生,很多SOA架構僅將目光鎖定在一個層上,而自動化通常至少應用于SOA解決方案中的兩個方面。

    首先,也是最明顯的一個方面是業務流程層。流程設計好了以后,其中的步驟就被連接起來,實現了自動化。因為這些流程通常是基于日常業務的,它們常常會需要和人進行交互。而另一個方面是非人類交互,或者叫系統交互。在過去幾年中,集成工具在這一領域內大顯身手。但是系統間的自動化提高了流程的整體效率,與人交互之間的各種問題比系統或應用間的交互更為重要。

    服務應當符合統一標準

    對于服務來說,采用標準化的方式進行通信是非常重要的。在SOA世界里,通信是由兩部分組成的:首先是網絡協議,例如,如果你想和你的老板溝通,最好的辦法是了解他更愿意通過電話還是電子郵件;第二個部分是數據或語言,如果你使用HTTP或JMS作為通信機制,那么你必須使用同樣的語言。例如,如果你的老板說法語而你說英語的話,你們之間的溝通就很容易出問題。服務需要的數據應該被清晰地定義,這樣服務提供者和使用者就能夠有效地進行溝通。

    可以將服務外包

    服務不同于產品,它的優點在于你不需要自己管理,也不需要象采購產品那樣全盤購買。而服務是可以外包的,這意味著當你需要向某個政府部門提交合法性文檔的時候,你并不一定需要自己完成它,很多不同的公司都在為各行各業提供服務。通過使用外包服務,你可以將精力集中在SOA策略最重要的核心部分——流程。

    外包的缺點在于如果你的競爭對手也采用了同樣的服務,你的競爭優勢就會被削弱。另一個問題是性能,外部網絡提供的服務對于你的業務流程來說,性能上會比內部服務差一些。

    可以使用現有的系統或應用來建設服務

    很多企業在考慮SOA的時候忽略了現有的系統,諸如主機應用等等,這是錯誤的。事實上,SOA的一個主要優點在于它允許企業重復利用主機和以前遺留下來的系統資源,因為核心業務邏輯和數據通常是存在于以前遺留下來的專用系統中。當然,主機并不是惟一遺留下來的數據源,小型機系統,例如AS/400、VAX或HP3000都可以用某種方式被服務激活。有很多不同的工具可以與這些專用系統進行通信,并將它們作為標準服務。

    性能是SOA系統首要問題

    在典型的SOA環境中,應用是相互獨立的,將不同應用中的數據關聯起來非常困難。而這對決策支持和報告系統來說意義重大,最大限度地提高性能的關鍵在于理解哪些應用或系統性能對業務來說最重要,一旦確認了哪些流程是重要的,你可以集中精力,在必要的領域內提高和改善性能。

    SOA實施由四個部分構成

    成功的SOA實施計劃應該包含四個主要的組成部分,第一部分定義業務流程,明確為了支持業務流程需要哪些服務,哪些數據與此相關;第二部分是SOA結構和模式,這一部分制定規則,描述服務如何定義及實施,說明通用實施和使用模式,制定開發服務過程中應該遵循的原則和標準;第三部分是SOA基礎架構,這一部分包括支持開發和實施服務及業務流程所需要的網絡、服務器、存儲、信息工具、集成工具和流程自動化工具等等;第四部分是SOA開發程序,這個程序確定了服務開發和流程實施的優先順序,指導整個項目,產生新的服務和流程。

    SOA實施的艱難路程

    盡管它是一種進化的技術,盡管目前已經可以找到很多關于SOA的知識,但是因為種種原因,建立服務架構仍然非常困難。其中最直接的原因在于SOA需要高度溝通,而且要求整個企業都為變革做好準備。變化帶來的問題解決之后,可能又會出現技術問題,包括建立合適的服務和消費模式,在技術方面培訓并發展團隊,逐步調整企業結構以適應SOA發展模式。盡管SOA技術組件可以在獨立的環境中進行測試,但SOA覆蓋整個企業,因此需要在服務架構的管理和控制計劃方面多下工夫。

    SOA的發展壯大已是一個不爭的事實。通過這些基本的要點你應該能夠對SOA的定義和實施有了較為清楚和正確的認識。

    (責任編輯:銘銘 mingming_ky#126.com TEL:(010)-68476636)



    原文轉自:http://www.kjueaiud.com

    ...
    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>