close
Web Service的應用與省思Web Service的應用與省思第八事業群系統部經理 劉炎坤什麼是Web Service?  什麼是Web Service呢?我們先來看看官方版的定義:Web Service 為一可透過 URI[ ]來標示位置的軟體系統,此系統的公開介面是透過XML來定義與描述,並可被其它的軟體系統所查詢。而這些系統間的溝通,是在網際網路的通訊協定上傳送以XML為格式的資訊。[ ]很繞口吧!簡言之,Web Service是在網際網路上提供訂做禮服其它程式或系統呼叫使用的程式,而這些程式間用XML做為其溝通媒介。Web Service觀念的演進  Web Service並不是因為某人被水果打個頭就突然想到的,它本身是一個觀念與想法的持續演進,就讓我們細說從頭。  在早期開發軟體時,為了系統日後容易維護及程式碼可以再用(reuse),而將軟體以結構化分析的方式,將程式切分成數個模組,並將常用功能獨立撰寫成函式(function),而屬性比較接的的函式則集合成函式商務中心庫(library),並有公司以銷售函式庫為其主要業務項目。但這樣的函式或函式庫通常會有受限於特定的程式語言或平台,對於不同的程式語言或平台,通常就無法共用。  後來的物件導向式分析與設計(OOAD/OOP)觀念的發展,則以較合乎直覺的方式將變數與程式碼包裝成類別(class),而繼承(inheritance)的使用,更加強了程式碼再用性與易維護性,但程式語言或平台的限制仍然存在。  為了要讓不同程式語言所撰寫的G2000程式,可以相互引用或呼叫,就必須有更新的想法與技術。而二進位機器碼(Binary Code)的共用,就可解決此一問題,軟體元件(Component)的技術剛好可達到這個目的。  就技術面而言,軟體元件強調的是:(1)Binary Reuse, (2)Language Independence, (3)Object-Oriented及(4)Inter-Process等四大特色,也就是說,軟體元件除了應以物件導向的概念建構外,尚需能夠在接受不同程式語言的作業環境,並能以跨平台作票貼業的方式作業,且在執行的過程中,應同時與其它也在執行中的式進行互動[ ]。不過事實並不會那麼盡如人意,譬如說,軟體元件要跨越的是兩台Windows作業系統的平台,此時以DCOM/COM+的機制是可輕易達到的,但如果是異質平台,像是Windows作業系統和Unix作業系統間呢?  正巧,遇上的網際網路及XML應用的蓬勃發展,開始有人試圖以XML來包裹函式間呼叫要傳遞的參數,並透過網際網路傳送,這便是XML-RPC[ ]的基新成屋本想法;而這樣的想法,在網際網路和XML都與平台及程式語言無關的前題下,解決了上面我們所提及的問題。這個觀念的持續發展,很快的就有了Web Service的出現。相關標準  雖然Web Service的架構在W3C仍只是草案(Working Draft),但現今已有相當多的工具及實際應用案例;而在Web Service的應用上,我們可以區分出幾個參與的角色[ ](參考圖 1):1. Service本身:即提供其它程式呼叫的程式,由提供者將它公佈網路行銷在網際網路上提供服務。2. 服務提供者(Provider):提供服務及服務本身一個執行的環境。3. 服務要求者(Requester):某種Client或應用程式,在網際網路上搜尋及使用Web Service。4. 目錄服務機構(UDDI Registry):是一種儲存Web Service資訊的環境,讓服務提供者註冊所要公開的服務資訊;也提供服務要求者一個搜尋的機制,和取得和Web Service溝通的相關資訊。從上述Web Service的定義及各參與角色的說明中,票貼我們可以整理出Web Service使用到的相關標準:1. XML:用以包裝資料、訊息及Web Service之描述。2. SOAP:Simple Object Access Protocol,架構在XML之上,是一種架構簡單的輕量級資料傳輸協定,用於分散式網路環境下做資料訊息交換,只要訊息收送雙方都支援此協定,就可以彼此交談,這也正是Web Service想要突破平台、語言疆界的最佳利器[ ]。3. WSDL:Web Services Description Language,顧名思義,是用租房子來描述服務提供者所提供的服務,包含了服務要求者如何與Web Service溝通,溝通的傳輸協定、參數、格式…等。WSDL也是以XML來編寫的。4. UDDI:Universal Description, Discovery and Integration,是由Microsoft, IBM…等多家國際大廠共同主推的Web Service註冊與搜尋機制。5. 安全機制:與Web Service相關的網路安全標準包括了XML數位簽章、XML資料加密、WS-Security…等,但因目前Web Service安全規範標準售屋網仍鬧雙胞[ ],而安全機制上的疑慮將可能會是推動Web Service企業級應用的一大阻礙。圖 2為W3C針對Web Service應用的組成架構。圖 3至圖 6為轉帳應用的示意圖。圖 2.Web Service組成架構圖 3.服務提供者向目錄服務機構註冊他們所提供的服務圖 4.”轉帳” 服務要求者向目錄服務機構查詢誰有提供 “付款”服務,讓它可完成轉帳功能 圖 5. ”轉帳” 服務要求者向目錄服務機構查詢誰有提供 “存款”服務,讓它可花蓮民宿完成轉帳功能
arrow
arrow
    全站熱搜

    bu07buhpkd 發表在 痞客邦 留言(0) 人氣()