- 學習Web服務
- Web服務 - 首頁
- 什麼是Web服務?
- 為什麼使用Web服務?
- Web服務 - 特性
- Web服務 - 架構
- Web服務 - 元件
- Web服務 - 示例
- Web服務 - 安全性
- Web服務 - 標準
- Web服務 - 總結
- Web服務資源
- Web服務 - 問題與解答
- Web服務 - 快速指南
- Web服務 - 有用資源
Web服務 - 特性
Web服務具有以下特殊的行為特徵:
基於XML
Web服務在資料表示和資料傳輸層使用XML。使用XML消除了任何網路、作業系統或平臺繫結。基於Web服務的應用程式在其核心級別具有高度互操作性。
松耦合
Web服務的使用者不會直接繫結到該Web服務。Web服務介面可以隨著時間推移而更改,而不會影響客戶端與服務互動的能力。緊耦合系統意味著客戶端和伺服器邏輯緊密繫結在一起,這意味著如果一個介面發生更改,則必須更新另一個介面。採用松耦合架構往往使軟體系統更易於管理,並允許不同系統之間更簡單的整合。
粗粒度
Java等面向物件技術透過單個方法公開其服務。單個方法對於在企業級提供任何有用的功能來說粒度太細了。從頭開始構建Java程式需要建立多個細粒度方法,然後將其組合成一個粗粒度服務,該服務由客戶端或其他服務使用。
企業及其公開的介面應為粗粒度。Web服務技術提供了一種自然的方式來定義訪問適當數量業務邏輯的粗粒度服務。
能夠同步或非同步
同步性指的是客戶端與服務執行的繫結。在同步呼叫中,客戶端阻塞並等待服務完成其操作後再繼續。非同步操作允許客戶端呼叫服務,然後執行其他函式。
非同步客戶端在稍後的時間點檢索其結果,而同步客戶端在服務完成後接收其結果。非同步能力是實現松耦合系統的關鍵因素。
支援遠端過程呼叫 (RPC)
Web服務允許客戶端使用基於XML的協議呼叫遠端物件上的過程、函式和方法。遠端過程公開Web服務必須支援的輸入和輸出引數。
在過去幾年中,透過企業級JavaBean (EJB) 和 .NET元件進行元件開發已越來越多地成為架構和企業部署的一部分。這兩種技術都是分散式的,可以透過各種RPC機制訪問。
Web服務透過提供自身的服務(等同於傳統元件的服務)或將傳入的呼叫轉換為對EJB或.NET元件的呼叫來支援RPC。
支援文件交換
XML的主要優勢之一是它以通用方式表示資料和複雜文件。這些文件可以像表示當前地址一樣簡單,也可以像表示整本書或詢價書 (RFQ) 一樣複雜。Web服務支援文件的透明交換,以促進業務整合。