當前位置:商標查詢大全網 - 會計培訓 - 什麽是SOA架構,能簡單說壹下嗎...謝謝大家!

什麽是SOA架構,能簡單說壹下嗎...謝謝大家!

Soa(面向服務的架構)。1996,Gartner最早提出SOA。從5438年6月到2002年2月,Gartner提出SOA是“現代應用開發領域最重要的課題”,並預言到2008年,SOA將成為絕對主導的軟件工程實踐方法,主流企業現在就應該投資於理解和應用SOA開發技能。

更好地支持業務流程

SOA並不是壹個新事物。多年來,IT組織已經成功地建立和實現了SOA應用軟件。BEA、IBM等廠商看到了它的價值,紛紛效仿。SOA的目標是使其更加靈活,更快地響應業務單元的需求,並實現實時企業(這是Gartner對SOA的願景目標)。BEA的Rhonda早在2001年6月就提出將BEA的IT基礎設施改造為SOA,並在控制整個企業架構、提高開發效率、加快開發速度、減少定制和人員技能投入等方面取得了良好的效果。

SOA是壹種在計算環境中設計、開發、應用和管理分布式邏輯(服務)單元的規範。這個定義決定了SOA的普遍性。SOA要求開發人員從服務集成的角度設計應用軟件,即使這樣做的好處不會立即顯現出來。SOA要求開發人員超越應用軟件,考慮重用現有的服務,或者檢查如何重用服務。SOA鼓勵使用替代技術和方法(如消息傳遞機制)來構建應用程序,方法是將服務鏈接在壹起,而不是編寫新代碼。在壹個合適的框架之後,這種消息機制的應用使得公司只需要調整原有的服務模式,而不是被迫開發大規模的新應用代碼,就可以在商業環境允許的時間內快速響應不斷變化的市場條件。

SOA不僅僅是壹種開發方法——它還包括管理。例如,應用SOA後,管理人員可以方便地管理這些建立在服務平臺上的企業應用程序,而不是管理單個應用程序模塊。其原理是,SOA通過分析服務之間的相互調用,方便公司管理者獲取何時、為何以及執行了哪些業務邏輯的數據信息,從而幫助企業管理者或應用架構師叠代優化其企業業務流程和應用系統。

SOA的壹個中心思想是讓企業應用擺脫面向技術的解決方案的束縛,輕松滿足企業業務服務的變化和發展需求。企業環境中的單壹應用程序無法滿足業務用戶的(各種)需求。即使是大規模的ERP解決方案,也無法滿足這種需求不斷擴大和變化的缺口,快速響應市場。業務用戶只能通過不斷開發新的應用程序和擴展現有的應用程序來支持他們現有的業務需求。通過關註服務,應用程序可以集中起來提供更豐富和更有目的的業務流程。因此,基於SOA的企業應用系統通常更真實地反映了與業務模型的結合。服務從業務流程的角度看待技術——這是自上而下的。這種觀點與由可用技術驅動的壹般業務觀點相反。服務的優勢很明顯:它們與業務流程相結合,因此可以更準確地表示業務模型,更好地支持業務流程。相反,我們可以看到,以應用程序為中心的企業應用程序模型迫使業務用戶將其能力限制在應用程序的能力範圍內。

企業流程是流經企業框架的空氣,它賦予業務模型中的組件以生命,並更清晰地定義它們的關系。流程定義了與業務模型交互的特殊方法。例如,會計可能是企業服務系統的壹個組成部分,但是向客戶發送發票是壹個業務流程。服務是為了支持業務流程而定義的,所以貫穿整個流程的是流程中各種服務組件的組裝操作和邏輯實現。理解業務流程是定制服務的關鍵。

有利於企業業務的整合

傳統的應用程序集成方法(點對點集成、企業消息總線或中間件集成(EAI)以及基於業務流程的集成)復雜、昂貴且不靈活。這些集成方法難以快速適應基於企業現代業務變化的不斷變化的需求。基於面向服務的架構(SOA)的應用程序開發和集成可以解決許多這樣的問題。

SOA描述了壹組完美的開發模式來幫助客戶端應用程序連接到服務。這些模式定制了壹系列用於描述服務、通知和發現服務以及與服務通信的機制。

與傳統的應用集成方法不同,在SOA中,所有圍繞服務的模式都是通過基於標準的技術來實現的。大多數通信中間件系統也是如此,如RPC、CORBA、DCOM、EJB和RMI。然而,它們的實現並不完美,在權衡標準定制的交互性和可接受性方面總是存在問題。SOA試圖消除這些缺陷。因為幾乎所有的通信中間件系統都有固定的處理模式,比如RPC函數,CORBA對象等等。然而,服務可以被定義為功能和對象、應用程序等等。這使得SOA適用於任何現有的系統,並且使得系統在集成時不必刻意遵循任何特殊的定制。

SOA幫助企業信息系統遷移到“離開層”架構,這意味著系統可以在不修改現有企業系統的情況下提供Web服務接口,因為它們已經被可以提供Web服務接口的應用層封裝,所以SOA可以在不修改現有系統架構的情況下快速將系統和應用轉換為服務。SOA不僅包括來自打包應用程序、定制應用程序和遺留系統的信息,還包括來自IT架構的功能和數據,如安全性、內容管理和搜索。因為基於SOA的應用程序可以很容易地從這些基礎服務架構中添加功能,所以基於SOA的應用程序可以更快地響應市場變化,並為企業業務部門設計和開發新的功能應用程序。