程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> 基礎教程介紹——什麼是SOA

基礎教程介紹——什麼是SOA

編輯:.NET實例教程

基礎教程介紹——什麼是SOA?


作者:-

對於面向同步和異步應用的,基於請求/響應模式的分布式計算來說,SOA是一場革命。一個應用程序的業務邏輯(business logic)或某些單獨的功能被模塊化並作為服務呈現給消費者或客戶端。這些服務的關鍵是他們的松耦合特性。例如,服務的接口和實現相獨立。應用開發人員或者系統集成者可以通過組合一個或多個服務來構建應用,而無須理解服務的底層實現。舉例來說,一個服務可以用。NET或J2EE來實現,而使用該服務的應用程序可以在不同的平台之上,使用的語言也可以不同。

 SOA有以下特性

  SOA服務具有平**立的自我描述XML文檔。Web服務描述語言(WSDL, Web Services Description Language)是用於描述服務的標准語言。

  SOA 服務用消息進行通信,該消息通常使用XML Schema來定義(也叫做XSD, XML Schema Definition)。消費者和提供者或消費者和服務之間的通信多見於不知道提供者的環境中。服務間的通訊也可以看作企業內部處理的關鍵商業文檔。

  在一個企業內部,SOA服務通過一個扮演目錄列表(directory listing)角色的登記處(Registry)來進行維護。應用程序在登記處(Registry)尋找並調用某項服務。統一描述,定義和集成(UDDI, Universal Description, Definition, and Integration)是服務登記的標准。

  每項SOA服務都有一個與之相關的服務品質(QoS, quality of service)。QoS的一些關鍵元素有安全需求(例如認證和授權),可靠通信(譯注:可靠消息是指,確保消息“僅且僅僅”發送一次,從而過濾重復信息。),以及誰能調用服務的策略。

  為什麼選擇SOA?

  不同種類的操作系統,應用軟件,系統軟件和應用基礎結構(application infrastructure)相互交織,這便是IT企業的現狀。一些現存的應用程序被用來處理當前的業務流程(business processes),因此從頭建立一個新的基礎環境是不可能的。企業應該能對業務的變化做出快速的反應,利用對現有的應用程序和應用基礎結構(application infrastructure)的投資來解決新的業務需求,為客戶,商業伙伴以及供應商提供新的互動渠道,並呈現一個可以支持有機業務(organic business)的構架。SOA憑借其松耦合的特性,使得企業可以按照模塊化的方式來添加新服務或更新現有服務,以解決新的業務需要,提供選擇從而可以通過不同的渠道提供服務,並可以把企業現有的或已有的應用作為服務, 從而保護了現有的IT基礎建設投資。

  如圖1的例子所示,一個使用SOA的企業,可以使用一組現有的應用來創建一個供應鏈復合應用(supply chain composite application),這些現有的應用通過標准接口來提供功能。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved