克服SOA实施过程中的障碍
生活随笔
收集整理的這篇文章主要介紹了
克服SOA实施过程中的障碍
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Jonathan Mack說,現(xiàn)在SOA實施“并不像許多分析機構(gòu)或Web研討會所指出的那樣普遍”。原因很簡單:成功的SOA實施是頗具挑戰(zhàn)性的。Jonathan Mack概述了三大挑戰(zhàn):
\u0026#xD;\n- 解決早于SOA的架構(gòu)——將現(xiàn)有企業(yè)資產(chǎn)整合到SOA里去。 \u0026#xD;\n
- 說服公司采用SOA——用具體的事實(而不是總體的陳述)闡述為什么SOA能夠產(chǎn)生與其成本相稱的效益,得公司涉眾(stakeholders)信服。 \u0026#xD;\n
- 設計最有效的SOA路線圖——定義實現(xiàn)SOA愿景的過程。 \u0026#xD;\n
雖然大部分SOA實踐者們提倡在現(xiàn)有企業(yè)應用之上構(gòu)建一個瘦服務層、盡量重用已經(jīng)存在的功能,但這樣實施的挑戰(zhàn)性常常比通常認為的要大得多。Jonathan Mack指出:
\u0026#xD;\n過去構(gòu)建的遺留系統(tǒng)(legacy systems)是一些零散的批處理或在線處理程序,它們必須按特定的順序組合起來才能產(chǎn)生有意義的業(yè)務功能。那些遺留的處理程序是用于滿足實際需要的, 它們常常是根據(jù)實際開發(fā)流程得到的、而不是與具體的功能相對應。從服務的觀點來看,這些程序缺乏一致性和含義。 \u0026#xD;\n關于解決這一問題的實際辦法,Jonathan Mack概述如下:
\u0026#xD;\n\u0026#xD;\n- 為你將構(gòu)建的服務增加一個瘦服務層作為過渡。所以要創(chuàng)建一些便于插入服務層的組件,以便遺留系統(tǒng)的程序員們可以按他們過去的方式進行工作(即用明確定義的輸入輸出來設計程序)。 \u0026#xD;\n
- 從一開始就在服務層中留好監(jiān)控與異常處理鉤子(hooks)。SOA最重要的優(yōu)點之一,就是它可以精確監(jiān)控應用的活動。 \u0026#xD;\n
- 若服務(service)比點對點的交互(point-to-point interaction)更具優(yōu)勢,那就構(gòu)建專門的服務。應為服務的構(gòu)建定義和發(fā)布明確的標準。最重要的一則標準就是:該服務存在多個客戶。 \u0026#xD;\n
- 不要迷信卓越中心(Centers of Excellence)。確保擁有一個小型團隊,選擇成員時應特別注重他們與其他開發(fā)者協(xié)同工作的能力。從一開始就通過合作共同構(gòu)建將來作為服務層基礎的公共服務。 \u0026#xD;\n
- 盡量構(gòu)建直接與主機(mainframe)交互的原子服務,盡量用ESB軟件來構(gòu)建合成服務。保持原子服務層與合成服務層的分離。 \u0026#xD;\n
可重用性(reusability)是SOA的一大賣點。不幸的是,這常常是一種信念,而非事實。能夠支持這一觀點的數(shù)據(jù)很少很少。Jonathan Mack說:?
\u0026#xD;\n要使重要涉眾(stakeholders)信服,你的闡述要更加具體才行。雖然用圖來解釋“SOA如何能幫助解決錯綜復雜的 系統(tǒng)所面臨的問題”很不錯,但公司里的涉眾想更具體地知道這一努力將如何產(chǎn)生與成本相稱的效益。而且,他們很擅長分辨ROI預估里數(shù)字的虛實。不論 你采用何種方式實施SOA,假如你希望被認真對待的話,你就必須提供非常實在的數(shù)字。 \u0026#xD;\n至于SOA路線圖,最近出現(xiàn)了兩種流行的SOA實施途經(jīng):
\u0026#xD;\n- 企業(yè)級(自上而下的)SOA實施途經(jīng):風險很高,最初預算要幾百萬美元。另外,根據(jù)不同的規(guī)模與復雜程度,這類項目的耗費基本無法準確預估。 \u0026#xD;\n
- 草根級(自下而上的)SOA實施途經(jīng):將SOA元素(包括服務和基礎設施)作為現(xiàn)有業(yè)務驅(qū)動的IT任務來實現(xiàn)。這種途徑一般不會成功。一來,最終得到的服務僅限于特定的業(yè)務問題,對企業(yè)的其他部分來說可能不適用(甚至是錯的)。二來,構(gòu)建SOA層所需的時間與開銷將有損于項目里的其他業(yè)務需求。 \u0026#xD;\n
Jonathan Mack提出的另一種途徑是:
\u0026#xD;\n逐步構(gòu)建SOA。大部分廠商已經(jīng)覺悟過來,認識到了這是最合理的途徑。然而,這做起來并不容易。企業(yè)服務總線 (Enterprise Server Bus,ESB)的核心元素——對不同系統(tǒng)間的信息進行轉(zhuǎn)換與轉(zhuǎn)化的能力,以及路由消息的能力——以及用于傳遞消息的消息傳遞基礎設施,這些必須從一開始 就要具備。公共(共享的)服務(如登錄、監(jiān)控和異常處理等)也應該是最早實現(xiàn)的。 \u0026#xD;\n SOA圍繞IT業(yè)吵鬧了將近10年,由于整體復雜性,至今仍沒有萬無一失的成功實施方案。每一個新的SOA項目“必須有明確的務實態(tài)度,必須對成功的實施步驟(及代價)有深入的研究和理解”。
總結(jié)
以上是生活随笔為你收集整理的克服SOA实施过程中的障碍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 新浪微博铁粉数量怎么查看 新浪微博铁粉查
- 下一篇: “全裸”:看向京的雕塑艺术展