SOA的目標在於讓IT系統變得更有彈性,以便更靈活、更快地響應不斷改變的企業業務需求,解決軟件領域壹直以來存在的“如何重用軟件功能”問題。采用SOA來構建信息平臺,無疑是未來的發展方向。
SOA的5大基本特征為軟件功能重用提供了解決的辦法。
①服務之間通過簡單、精確定義的接口進行通信,不涉及底層編程接口和通信模型。
②粗粒度性:粗粒度服務提供壹項特定的業務功能,采用粗粒度服務接口的優點在於使用者和服務層之間不必再進行多次的往復,壹次往復就足夠了。
③松耦合性:松耦合性要求SOA架構中的不同服務之間應該保持壹種松耦合的關系,也就是應該保持壹種相對獨立無依賴的關系。這樣的好處有兩點,首先是具有靈活性,其次當組成整個應用程序的服務內部結構和實現逐步地發生變化時,系統可以繼續地獨立存在。而緊耦合意味著應用程序的不同組件之間的接口與其功能和結構是緊密相連的,因而當需要對部分或整個應用程序進行某種形式的更改時這種結構就顯得非常脆弱。
④位置透明性:位置透明性要求SOA系統中的所有服務對於其調用者來說都是位置透明的,也就是說,每個服務的調用者只需要知道想要調用的是哪壹個服務,但並不需要知道所調用服務的物理位置在哪。
⑤協議無關性:協議無關性要求每壹個服務都可以通過不同的協議來調用。
另外,在許多傳統的IT系統的內在部分采用的是硬連接,這種結構很難讓企業快速響應市場的變化,而SOA能夠重復利用企業現有的資源,可以減輕企業運營成本,提升資源的使用效率,並且減輕企業維護人員的工作量,減少潛在的風險以及管理費用。在業務方面和IT方面帶來許多優勢:
①服務給精確的業務流程帶來靈活性;
②使用服務來改善客戶服務,而不必擔心底層復雜的IT基礎架構;
③可以迅速創建新的業務流程和復雜的應用程序,以適應市場變化;
④借助安全、易管理的集成環境,成為響應能力更強的IT組織;
⑤通過使用預裝的、可重復使用的服務構建模塊,縮短開發和部署周期;
⑥通過使用服務來降低復雜性和維護成本;
⑦是增強而不是替換現有的IT系統。