• 沒有找到結果。

第二章 文獻探討

2.1 網路服務架構

在過往B2C(Business to Customer)的年代,Web服務的開發對象都是以個人為 主,使用者所能使用的功能僅限於單一主機系統所提供的功能,然而隨著網際網 路的發展,使得B2B(Business to Business)的商業模式逐漸興盛,為了讓企業內的 服務能夠和外部夥伴間建立起流暢的作業流程,服務導向架構(Service-Oriented Architecture, SOA)被提了出來,使得現今的服務對象擴展到了應用程式,亦即應 用程式之間必頇要能夠相互溝通。

因此,為了因應需求,以服務為導向並且以XML為基礎的網路服務技術被提 了出來,使得應用程式之間可以透過網際網路來交換訊息並整合資料。根據 W3C(World Wide Web Consortium)對於網路服務的定義,一個網路服務是指一個 應用程式可以藉由XML來描述查詢,並且利用URI(Uniform Resource Identifier) 來辨識此應用程式的界面和連結方式,而應用程式之間亦是藉由XML形式的訊 息,經由網際網路的標準技術規範來互相溝通。簡單而言,Web Service就是一種 軟體元件,能夠透過HTTP以及資料格式的開放式標準,例如XML、WSDL、及 SOAP等等,來為其他的應用程式提供服務。由於網路服務是以網際網路的開放 標準為基礎,在已被廣泛使用的網路架構上來運作,使得網路服務具有良好互通 性,讓在不同平台上用不同程式語言所建置的系統也可以輕易整合,克服目前分 散式系統使用不同機制造成整合困難的情形,使其具有實現分散式架構的動態整

5

合、平衡負擔等優點。圖1為W3C所提出的一個網路服務的架構圖。

圖 1、W3C 網路服務架構圖

2.1.1 網路服務的角色

在網路服務的服務導向架構中主要會由三個角色所構成 : 包括服務提供者 (Service Provider) 、 服 務 需 求 者 (Service Requester) 、 和 服 務 註 冊 中 心 (UDDI Registry)[30,23]。

其中服務提供者主要的目的在於開發網路服務以及建立服務的描述細節,並 且將服務註冊於服務註冊中心。而服務註冊中心就扮演著仲介的角色,集成所有 服務,接受來自服務提供者的服務註冊請求,也可以處理來自服務需求者的查詢 要求。當服務需求者需要找尋服務時,就會透過服務註冊中心來搜尋,並且鏈結 適當的網路服務。圖2簡單描述了這三個角色之間的關係。

6

圖 2、服務導向架構圖[23]

因此,一個取得網路服務的流程可以拆成下面的步驟來完成 :

(1) 註冊(Registry):服務提供者將網路服務依UDDI 所需資料向服務註冊中 心註冊。

(2) 發佈(Publish):服務仲介者回應服務提供者註冊成功的訊息,並通報到 其他仲介者,完成網路服務發布程序。

(3) 網路服務查詢(Find):服務需求者向服務仲介者提出服務的查詢需求。

(4) 回應網路服務查詢:服務仲介者回應服務需求者查詢的結果,並且取得 服務描述資訊(WSDL),完成網路服務的發現(Find)程序,

(5) 呼叫網路服務:服務需求者依據WSDL的描述鏈結來對服務提供者發出 服務要求(Request)的訊息

(6) 完成鏈結程序(Bind):服務提供者回應服務需求者執行的結果,完成網 路服務的鏈結程序。

從上面的流程可以看到,網路服務查詢(Find)扮演了一個重要的角色,其幫 助服務需求者找到服務提供者所發佈的網路服務,使得整體的架構得以順利運行。

因此,在接下來的章節中,本論文將會針對網路服務查詢所衍生的問題及方法作 更深入的探討。

7