當(dāng)前位置:工程項目OA系統(tǒng) > 泛普各地 > 河北O(jiān)A系統(tǒng) > 石家莊OA系統(tǒng) > 石家莊OA信息化
Web服務(wù)的計量與統(tǒng)計
Web服務(wù)的計量與統(tǒng)計
--一種動態(tài)電子商務(wù)解決方案
Dietmar Kuebler
軟件設(shè)計師,IBM Software
Group
Wolfgang Eibach
軟件設(shè)計師,Banking Solutions,IBM Software
Group
2001 年 7 月
作者在本文中描述了一個面向可由服務(wù)提供者為服務(wù)請求者實現(xiàn)的商業(yè) Web 服務(wù)的通用定價模型。他們提出的解決方案顯示了 Web
服務(wù)的使用如何被計量以及計量所得到的數(shù)據(jù)(供隨后的統(tǒng)計與記賬使用)。文中提出的解決方案自身以示例的方式作為 Web
服務(wù)得以實現(xiàn)。
對 Web 服務(wù)定價模型的需求
隨著 Web 服務(wù)在業(yè)界的發(fā)展,面向商業(yè) Web
服務(wù)提供者的商業(yè)模型會成為受到越來越多的矚目和討論的對象。如今發(fā)布的 Web
服務(wù)基本上都是免費的,因此并未對其價值進行衡量。然而隨著更高價值的服務(wù)(例如,支付處理)的出現(xiàn),對于一個能有效衡量由服務(wù)請求者調(diào)用的 Web
服務(wù)模型的需求也將不斷增長。由于這些服務(wù)并不依賴于瀏覽器,因此廣告收入在這一環(huán)境中多少會失去意義,這就必須用另一個模型來對其進行替換。
Web 服務(wù)及其體系結(jié)構(gòu)的概述
Web
服務(wù)是一個被包裝成單一實體,且被發(fā)布以供其它程序使用的功能集合,它引入了由程序啟動的事務(wù)對使用瀏覽器人工啟動的事務(wù)的置換。它們能在分布式環(huán)境中得到描述、發(fā)布、發(fā)現(xiàn)以及動態(tài)調(diào)用,這意味著
Web 服務(wù)是完全建立在因特網(wǎng)標(biāo)準(zhǔn)之上的。
Web 服務(wù)背后的體系結(jié)構(gòu)概念是面向服務(wù)的體系結(jié)構(gòu)(service-oriented architecture,SOA)。它描述了三個基本角色:
服務(wù)提供者
服務(wù)中介者
服務(wù)請求者
如圖 1 所示,這些角色通過
find、bind 和 publish/unpublish 操作進行交互。
圖 1:Web 服務(wù)組件
服務(wù)提供者提供服務(wù),并將它們通過注冊方進行發(fā)布。服務(wù)中介者為發(fā)布及定位服務(wù)提供支持。而服務(wù)請求者則通過服務(wù)中介者查找所需的服務(wù)并通過服務(wù)提供者綁定到服務(wù)。
創(chuàng)建 Web 服務(wù)定價模型的難題
當(dāng)前 Web
服務(wù)倡議的發(fā)展相當(dāng)快,并且面臨著許多技術(shù)難題,其中有:
可靠性與安全性
事務(wù)與可伸縮性
可統(tǒng)計性與測試,等等。
本文中簡要說明的解決方案主要關(guān)注的是 Web
服務(wù)的統(tǒng)計這一問題領(lǐng)域,特別觀察了面向服務(wù)提供者的商務(wù)管理以及他們?nèi)绾尾拍苡行У貫樗麄兯峁┑姆?wù)向服務(wù)請求者收費。
計量與統(tǒng)計模型
計量與統(tǒng)計模型是專為 Web 服務(wù)設(shè)計的,它采用了比測量 IP
地址間的流量、對發(fā)送的電子郵件進行計數(shù),或者記錄特定用戶所使用的存儲量更為高級的方法。盡管它的設(shè)計是用來支持使用 Web
服務(wù)的服務(wù)提供者的,但每個提供者仍能在他們自己的系統(tǒng)中運行不同的 Web 服務(wù)??偟膩碚f,我們考慮的是:
簡單服務(wù),類似股票行情服務(wù)或溫度服務(wù)等沒有服務(wù)質(zhì)量擔(dān)保、且可以免費獲得的服務(wù)。
客戶在商業(yè)交易中所使用的服務(wù)。在這種服務(wù)中,服務(wù)質(zhì)量起到了非常重要的作用,而該服務(wù)很可能不是免費提供的。
對于后一種服務(wù),服務(wù)提供者需在使用時對其進行審計,并為其記賬。這通常是定期實行的,同時也是要用到計量和統(tǒng)計模型的地方。
模型是在這樣一個基本設(shè)想上進行操作的,即價值較高的 Web 服務(wù)是通過服務(wù)級別協(xié)議(Service Level Agreement)(SLA's)或其等效協(xié)議訂立合同的,這表明雙方對合同達成一致意見。合同涵蓋了服務(wù)慣例的所有屬性以及提供者和請求者如何對其進行使用,它的訂立為計量服務(wù)的使用建立了基礎(chǔ)。合同還可包含使用 Web 服務(wù)的環(huán)境先決條件。
一旦請求者(或客戶方)與提供者簽訂了合同(或進行了注冊),請求者就為提供者和服務(wù)計量所知了。這可通過用電子方式簽訂關(guān)于使用 Web 服務(wù)的合同和證書來實現(xiàn)。
合同提供了有關(guān)下列事項的詳細(xì)信息:
合同的類型:長期的、臨時的、限期的、無限期的,等等
合同的生效日期和終止日期
使用的時間模型:每天、周一到周五,等等
數(shù)量模型,規(guī)定了所提供服務(wù)的數(shù)量限制
安全性:加密與認(rèn)證的簽名或證書
計量與統(tǒng)計服務(wù)通過證書的內(nèi)部使用將合同中詳細(xì)說明的請求者與提供者之間的關(guān)系存儲起來。這對于記賬用途來說特別重要,從而可以避免對服務(wù)請求者的錯誤收費。服務(wù)請求者在使用有合同的服務(wù)時必須同時使用一個帶簽名的
SOAP 消息。
請注意,合同的使用并不能排除不同地動態(tài)發(fā)布的 Web 服務(wù)之間的關(guān)系;它僅僅要求使用一個合適的使用模型。
計量的功能性適合很多可能的商業(yè)模型,如:
點擊付款/付費使用模型
預(yù)訂模型
租用模型
欲了解關(guān)于不同收入模型的討論,請參閱參考資料部分。
用途與功能性
計量與統(tǒng)計 Web 服務(wù)通常充當(dāng) Web
服務(wù)的資源計數(shù)器。它為下列事項提供了輸入:
根據(jù)服務(wù)提供者的等級模型進行記賬(例如:公共記賬接口)
支付與稅收處理
定義如下的功能與統(tǒng)計圖:
記錄用戶使用服務(wù) xyz 的起始時間
記錄用戶使用服務(wù) xyz 的結(jié)束時間
記錄一個特定用戶的全部資源使用量
報告每次請求的使用服務(wù)統(tǒng)計數(shù)據(jù)
創(chuàng)建服務(wù)請求者(Service Requestor,SR)賬戶(臨時賬戶和合同)
創(chuàng)建服務(wù)提供者(Service Provider,SP)賬戶
如果用戶標(biāo)識得到使用所請求的服務(wù)標(biāo)識(合同元素)的許可,則對查詢作出答復(fù)。
創(chuàng)建與 XML 一致的 IPDR.org 使用記錄
計量服務(wù)使得用 XML
文件那樣的標(biāo)準(zhǔn)格式來檢索使用數(shù)據(jù)成為可能。該數(shù)據(jù)能在成批的模型中使用,也就是說,它可供一個支持符合處理標(biāo)準(zhǔn)的輸入的記賬產(chǎn)品使用。
面向基于 IP 的服務(wù)的網(wǎng)絡(luò)數(shù)據(jù)管理用途
服務(wù)元素參與了基于 IP
的服務(wù)的傳遞,這些服務(wù)元素中的使用數(shù)據(jù)的交換用到了一些技術(shù)信息,IPDR 組織指定這些技術(shù)信息中哪些是充分的。他們開發(fā)了一個框架,可以限定 IP
網(wǎng)絡(luò)和服務(wù)元素以及支持系統(tǒng),并描述了系統(tǒng)間的關(guān)系。這一框架提供了一個模板,該模板指定了需要交換的 IP 資源類型和服務(wù)使用信息。
所有 IPDR 服務(wù)通用的元素是在一個單獨的 Master IPDR Schema
文檔中被聲明。服務(wù)專用模式指定了定義每項服務(wù)特定的 IPDR 元素所需的數(shù)據(jù)類型。在本文展示的引導(dǎo)實現(xiàn)中,我們根據(jù)計量與統(tǒng)計模型開發(fā)了一個 Web
服務(wù)專用模式。
概念體系結(jié)構(gòu)的計量
圖 2:概念體系結(jié)構(gòu)的計量
圖 2 展示了作為 Web
服務(wù)實現(xiàn)的資源計數(shù)器的概念體系結(jié)構(gòu)。服務(wù)請求者(客戶方)在服務(wù)提供者的服務(wù)器上執(zhí)行服務(wù)。如果存在合同,并且調(diào)用的服務(wù)不是免費的,服務(wù)提供者就會向計量服務(wù)發(fā)送一個“記錄用戶起始時間”的請求。這一請求攜帶著服務(wù)請求者的用戶標(biāo)識,可供計量服務(wù)作為關(guān)鍵字用來為該用戶查找統(tǒng)計模型及當(dāng)前計量數(shù)據(jù)。被提議的概念還將計量服務(wù)定義為一種需使用
SOAP 消息進行訪問的 Web 服務(wù)。它允許服務(wù)提供者或者將計量作為在其自身的位置實現(xiàn)的本地服務(wù),或者使用提供該項服務(wù)的可用的 Web
服務(wù)提供者。
計量服務(wù)在其數(shù)據(jù)庫中保存著不同的統(tǒng)計模型,它反映了服務(wù)請求者與服務(wù)提供者之間合同的統(tǒng)計部分。合同的這一部分可能指出了允許客戶方何時使用服務(wù)、每天或每月的服務(wù)最大使用量,等等。它還根據(jù)時間、調(diào)用數(shù)目或一些其它的模型規(guī)定如何對服務(wù)收費。
作為對“記錄用戶起始時間”的響應(yīng),計量服務(wù)可能會指出當(dāng)前不允許客戶使用請求的服務(wù),或者已經(jīng)超過了最大使用量。在得到肯定的響應(yīng)時,服務(wù)提供者會執(zhí)行請求的服務(wù),并且會在執(zhí)行結(jié)束后用“記錄用戶結(jié)束時間”的請求通知計量服務(wù)。
服務(wù)提供者可以隨時請求得到客戶方的統(tǒng)計數(shù)據(jù)供記賬使用。
解決方案的組件
圖 3
顯示了建立一個計量服務(wù)平臺所需的組件。與服務(wù)提供者的連接是使用 SOAP 通過 HTTP 實現(xiàn)的。我們假定計量服務(wù)是在 Web 服務(wù)器平臺上實現(xiàn)的。一個類似
Websphere 的 Web 應(yīng)用服務(wù)器和一個 SOAP 服務(wù)器是 Web
應(yīng)用服務(wù)器平臺上可用的標(biāo)準(zhǔn)組件。另外還需要兩個附加組件(稍后我們將加以討論)以實現(xiàn)計量服務(wù)。
圖 3:組件概述
資源計數(shù)器服務(wù)組件從服務(wù)提供者處接收進入的請求,提供被請求的服務(wù)并返回響應(yīng)。該組件與一個帶有 XML 擴展的關(guān)系數(shù)據(jù)庫連接在一起,如帶有 XML 擴展器的 DB2,并為指定的服務(wù)請求者檢索統(tǒng)計模型和當(dāng)前賬戶記錄。如果該統(tǒng)計模型不排除服務(wù)的執(zhí)行,則資源計數(shù)器服務(wù)組件將更新當(dāng)前數(shù)據(jù),并給服務(wù)提供者一個肯定的響應(yīng),隨后該服務(wù)提供者開始執(zhí)行該服務(wù)。
已訂立合同的 Web 服務(wù)組件會對進入的 SOAP 請求進行認(rèn)證。合同對于服務(wù)請求者必須可用,否則請求將遭拒絕。
使用案例
圖 4
中的順序圖表顯示了一個經(jīng)過認(rèn)證的服務(wù)請求者是如何請求可記賬的服務(wù)的。服務(wù)請求者與服務(wù)提供者之間有一個有效合同。服務(wù)提供者利用過濾器來檢查請求者的權(quán)限,并與計量服務(wù)提供者進行交互。然后該過濾器在
SOAP RPC 調(diào)用過程中集成數(shù)字簽名。(請參閱參考資料部分中的教程,來獲取一個這樣的示例。)
圖 4:資源計數(shù)器使用案例
上述圖表示范的過程中執(zhí)行了下列步驟:
SOAP 綁定(SOAP Bind)請求服務(wù)提供者提供的 Web 服務(wù)
服務(wù)提供者過濾器使用提供的簽名來檢查服務(wù)請求者的認(rèn)證,并在萬一沒有認(rèn)證的情況下給出一個 SOAP 錯誤(SOAP Fault)響應(yīng)。
SOAP 請求被發(fā)送給計量服務(wù)提供者,請求其對 Web 服務(wù)進行計數(shù),而計量服務(wù)提供者根據(jù)合同的詳細(xì)信息驗證服務(wù)提供者的請求,并開始計數(shù)
服務(wù)提供者執(zhí)行服務(wù)
Web 服務(wù)完成
SOAP 請求消息被發(fā)送到資源計數(shù)器以停止計數(shù)
SOAP
響應(yīng)消息被發(fā)送到服務(wù)請求者,表明服務(wù)已經(jīng)完成,并返回結(jié)果
為簡單起見,我們省略了次要的交互作用(也就是出錯情況以及驗證簽名所需的認(rèn)證機構(gòu))。
引導(dǎo)實現(xiàn)
我們實現(xiàn)了一個原型來展示計量的用法。代碼被集成到 IBM Web
Services ToolKit(可從 IBM Alphaworks 中獲得;請參閱參考資料)中的 Gourmet2Go 演示應(yīng)用程序中。
圖 5 展示了由使用 Gourmet2Go 演示應(yīng)用程序和注冊服務(wù)的用戶在幾次會話期間收集到的數(shù)據(jù)。正如我們先前討論過的那樣,服務(wù)根據(jù)不同的演示目的被分配了不同類型的使用模型。
結(jié)論
應(yīng)包含在企業(yè)商務(wù)交易中的有價值的 Web
服務(wù)需要關(guān)于服務(wù)提供者如何對服務(wù)的使用進行收費的模型。在本文中,我們已經(jīng)就此問題展示了一個可能的解決方案。
一個使用該服務(wù)來計量 Web 服務(wù)使用的服務(wù)提供者首先在計量服務(wù)中注冊可用的 Web 服務(wù)。選擇使用服務(wù)提供者提供的某個服務(wù)(如,在仔細(xì)地查過 UDDI 注冊方以后)的服務(wù)請求者預(yù)訂使用該服務(wù)并訂立合同。合同的一部分是選擇一個預(yù)先定義的使用模型并在諸如 X509.v3 的證書標(biāo)準(zhǔn)上達成一致。這對于請求者簽名 SOAP 消息以及提供者評測正確的請求者都是必要的。一種典型的情況是,提供者定期使用計量服務(wù)來生成記賬數(shù)據(jù)對簽過合同的請求者進行收費。
我們建議的模型是作為 Web 服務(wù)自身來實現(xiàn)的。服務(wù)提供者能將一個類似的模型直接集成到其服務(wù)提供者平臺中,但這樣就會失去一些可能會飛速發(fā)展的 Web 服務(wù)的優(yōu)勢。
參考資料
- 請閱讀關(guān)于 Web 服務(wù)體系結(jié)構(gòu)的內(nèi)容。
- 請閱讀 Web 服務(wù)設(shè)計師,第 2 部分:動態(tài)電子商業(yè)模型,看看關(guān)于 Web
服務(wù)和收入模型的價值問題的討論。
- 請從 IBM Alphaworks 頁中查找 IBM Web
Services Tookkit。
- 在這里您能找到關(guān)于 IPDR.org 倡議的所有詳細(xì)信息。
- 請使用關(guān)于 SOAP 數(shù)字簽名的出色教程。
- 白皮書: Dynamic e-business and with DB2 and Web services 展示了 DB2 是如何通過 DB2 XML 擴展器支持 Web 服務(wù)的。
Dietmar Kuebler 是一個在 IBM Boeblingen 實驗室工作的軟件設(shè)計師。他曾擔(dān)任過開發(fā)、技術(shù)營銷和項目管理幾個方面的各種職務(wù),具有在多環(huán)境下進行結(jié)構(gòu)設(shè)計和軟件開發(fā)方面的廣泛經(jīng)驗。它的專業(yè)技術(shù)領(lǐng)域包括 OO 技術(shù)、Java、WebSphere 以及中間件技術(shù)。
Wolfgang
Eibach 在 IBM Boeblingen
實驗室工作,擔(dān)任開發(fā)與體系結(jié)構(gòu)方面的多個職務(wù)。他作為軟件設(shè)計師的專業(yè)經(jīng)驗包括大型的基于主機的軟件系統(tǒng)、OO 技術(shù)、MQSeries、Workflow
以及金融應(yīng)用程序。
Dietmar 和 Wolfgang 目前正在 IBM Boeblingen 實驗室從事 Web 服務(wù)倡議的工作。
- 1借助RDF增強WSDL--管理結(jié)構(gòu)化的Web服務(wù)元數(shù)據(jù)
- 2石家莊OA信息化隨筆之一:石家莊OA信息化“突圍”(by AMT 夏敬華)
- 3Web服務(wù)內(nèi)幕,第10部分:深入主題:可靠性和事務(wù)
- 4知識的經(jīng)濟學(xué)性質(zhì)
- 5ADO vs. ADO.NET Webservice
- 6Web Services: Building Reusable Web Components with SOAP and
- 7At Your Service, On the Web
- 8Sharing information through the Lotus Knowledge Discovery Sy
- 9Web服務(wù)設(shè)計師,第5部分:基于付費Web服務(wù)的障礙
- 10泛普軟件石家莊OA信息化IT實施步驟與策略
- 11微軟:“Web服務(wù)我們領(lǐng)先Sun 18個月”
- 12Building an ASP.NET Web Service
- 13Nasdaq、MS、PwC推出財務(wù)信息網(wǎng)上服務(wù)
- 14Web Services with ASP.NET
- 15BEA向Web服務(wù)互操作發(fā)展
- 16創(chuàng)造性的Intranet:Factors for Corporate Knowledge Creation
- 17Applying .Net to Web Services
- 18Building a Distributed Web Service Using a Strongly-Typed Da
- 19石家莊泛普OA軟件管理門戶登錄
- 20Consuming a Web Service from a Win Form Application
- 21架構(gòu)Web Service:描述與注冊,發(fā)布Web服務(wù)
- 22透視Best Buy石家莊OA信息化實踐(by AMT 夏敬華 編譯)
- 23關(guān)于知識的問題
- 24將Web服務(wù)用于電子交易的單點登錄
- 25OA辦公系統(tǒng)軟件信息傳遞的安全解決方案
- 26Accessing Server Variables From Within Web Services
- 27尊重知識 崇尚理性
- 28關(guān)于石家莊OA信息化的幾個問答(by AMT 夏敬華)
- 29Accessing Web Services From DHTML
- 30企業(yè)CIO剖析中小企業(yè)信息化發(fā)展建設(shè)盲點.
成都公司:成都市成華區(qū)建設(shè)南路160號1層9號
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓
版權(quán)所有:泛普軟件 渝ICP備14008431號-2 渝公網(wǎng)安備50011202501700號 咨詢電話:400-8352-114