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