監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價咨詢管理系統(tǒng) | 工程設計管理系統(tǒng) | 甲方項目管理系統(tǒng) | 簽約案例 | 客戶案例 | 在線試用
X 關(guān)閉
石家莊OA系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設南路160號1層9號

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務大廈18樓

咨詢:400-8352-114

加微信,免費獲取試用系統(tǒng)

QQ在線咨詢

用SLA保證Web服務

申請免費試用、咨詢電話:400-8352-114

AMTeam.org

用SLA保證Web服務
 
 --介紹、體系架構(gòu)和測試機制


Judith M. Myerson(jmyerson@bellatlantic.net

系統(tǒng)設計師和工程師

2002 年 4 月

許多企業(yè)正要求服務品質(zhì)協(xié)議(SLA),SLA 可以保證企業(yè)為之付費的 IT 服務的可靠性。隨著 Web 服務成為主流,客戶將要求保證服務質(zhì)量的 SLA。在本文中,Judith M. Myerson 說明了如何建立保證 Web 服務的服務品質(zhì)協(xié)議(SLA)。她討論了 SLA 中應該考慮進的例外情況,并給出了把 Web 服務作為由 SLA 保證的、公開的 Web 服務投入到生產(chǎn)環(huán)境之前應該測試其 SOAP 互操作性的示例。

介紹:什么是 SLA?

服務品質(zhì)協(xié)議(service-level agreement)(SLA)是服務提供者和客戶之間的一個正式合同,用來保證可計量的網(wǎng)絡性能達到所定義的品質(zhì)。SLA 為服務提供者提供了一種在當今多變而又競爭激烈的市場中勝過對手的方法。服務提供者可能是一個國內(nèi)的 IT 組織、一個應用程序服務提供者(ASP)、一個網(wǎng)絡服務提供者(NSP)、一個因特網(wǎng)服務提供者(ISP)、一個受管服務提供者(MSP)或者任何其它類型的服務提供者。

SLA 可以非?;\統(tǒng)或者極度詳細,它一般都包含出現(xiàn)故障時服務提供者和客戶應采取的步驟。服務提供者保證它提供的服務在一定百分比的時間內(nèi)(例如,99.9%)是可用的。提供者還能夠強制向客戶通知 SLA 當機時間的最長和平均響應時間,或者在網(wǎng)絡接口發(fā)生改變之前的最長和平均響應時間,并利用基于因特網(wǎng)的工作流自動化、分發(fā)和報告技術(shù)。如果經(jīng)過指定的一段時期后提供者無法達到所定義的性能品質(zhì),客戶就可以獲得一些權(quán)利和賠償。各個 SLA 的權(quán)利、賠償和例外情況是不同的。客戶還同意接受協(xié)議一般條款的指定例外情況。

在每個 SLA 中都必須精確定義服務品質(zhì);否則各方關(guān)于 SLA 將以哪種品質(zhì)衡量什么服務或性能標準將無法達成一致。例如,一個客戶可能認為一個雙方同意的服務品質(zhì)將衡量網(wǎng)絡 A、網(wǎng)絡 B 和網(wǎng)絡 C,同時后兩者連接到第一個,而服務提供者卻認為它只衡量網(wǎng)絡 A。還有一點很重要的是正常運行時間可用性百分比的小數(shù)位數(shù):例如,一年中的當機小時數(shù)和當機天數(shù)比,99.999% 的正常運行時間所允許的當機時間比 99.9% 的正常運行時間所允許的當機時間還少。SLA 應該為客戶包含進一個退出條款;當因為不能圓滿解決經(jīng)常發(fā)生的可用性、可靠性和安全性問題而使客戶的業(yè)務運轉(zhuǎn)頻繁中斷時,客戶希望他有終止協(xié)議的權(quán)利。

SLA 的發(fā)展

SLA 已經(jīng)出現(xiàn)了一段時間了。在二十世紀六十年代,它們是用于達到已定義的服務品質(zhì)和響應服務問題的一般操作程序,而這些服務問題是用戶組織在購買或租用大型機上的機器時間時就已經(jīng)同意過的。超大型計算機(big iron)是缺省的企業(yè)系統(tǒng),其它任何技術(shù)的處理能力都無法與它相比。

當客戶機/服務器和網(wǎng)絡桌面系統(tǒng)進入計算機世界時,人們就構(gòu)思出了分布式網(wǎng)絡系統(tǒng)這個概念。這些系統(tǒng)后來發(fā)展成了跨網(wǎng)絡運行企業(yè)資源規(guī)劃(ERP),供應鏈管理(SCM)和客戶關(guān)系管理(CRM)系統(tǒng)的企業(yè)范圍的系統(tǒng)。

在這個發(fā)展過程中,企業(yè)對因特網(wǎng)的依賴已經(jīng)使得公司的應用程序套件的網(wǎng)絡延遲影響越來越明顯。同時,用戶(也就是客戶)已經(jīng)委托一定品質(zhì)的服務質(zhì)量保證相關(guān)的可用性、可靠性和響應時間以確保業(yè)務運轉(zhuǎn)不被中斷,并且依賴外部服務提供者來提供應用程序、因特網(wǎng)、網(wǎng)絡,受管服務和其它服務。結(jié)果,SLA 變得更復雜,范圍更廣,一個用戶可以有與不同提供者簽定的幾個 SLA。反過來,提供者自己的 SLA 也可以是與其它提供者簽定的,每個 SLA 都有一套不同的需求、衡量標準和例外情況。

新方向:用 SLA 保證 Web 服務

因特網(wǎng)(和企業(yè)內(nèi)部網(wǎng))的新方向提供了將來自不同來源(通過 Web 服務)的全異系統(tǒng)聚合并集成在一起的新方法和機會。隨著不斷擴展的分布式網(wǎng)絡系統(tǒng)中提供者之間的關(guān)系變得更加復雜,Web 服務已經(jīng)使 SLA 變得更富有挑戰(zhàn)性。我們看到這些 SLA 不僅僅保證網(wǎng)絡性能和正常運行時間可用性;由于每個 Web 服務都有不同的特征和網(wǎng)絡需求,它們還被用來保證應用程序的性能。目前,一些 SLA 可以或者早已經(jīng)作為公共 Web 服務公開了。

所有的 Web 服務都提供在 Web 上集成和修改系統(tǒng)組件的靈活性,以允許用戶更改需求和在一定網(wǎng)絡流量條件下處理網(wǎng)絡資源爭用。然而,這種靈活性要受到簡單對象訪問協(xié)議(Simple Object Access Protocol,SOAP)和統(tǒng)一描述、發(fā)現(xiàn)和集成(Universal Description and Discovery Integration,UDDI)互操作性問題的限制,因為一些主要廠商對這些協(xié)議的標準規(guī)范的解釋是不同的。這意味著在把 Web 服務投入到生產(chǎn)環(huán)境和在 UDDI 或另一個公共注冊中心將其作為公共服務發(fā)布之前,必須解決互操作性問題。對于 SLA 保證的 Web 服務(我們有時候稱其為 SLA Web 服務)也是如此,不管該服務是獨立的還是作為一套 Web 服務的一部分。后者的一個很好的示例是一個單獨的 SLA,它適用于 Web 基礎架構(gòu)的每一段,從因特網(wǎng)到 Web 服務應用程序。

SLA Web 服務體系架構(gòu)

在進行進一步討論之前,讓我們來看一下 SLA 保證的 Web 服務的體系架構(gòu)。這個體系架構(gòu),如下圖 1 所示,需要三個服務角色:一個服務提供者、一個服務客戶和一個服務代理。通過在適當?shù)钠脚_上創(chuàng)建一個 Web 服務并生成 WSDL 文檔和服務的基本 SLA ,服務提供者發(fā)布一個由 SLA 保證的 Web 服務。下一步,它把服務細節(jié)發(fā)送到服務代理以存儲在資源庫中。服務客戶向代理注冊,然后在代理的資源庫中搜索并發(fā)現(xiàn)適當?shù)?Web 服務,檢索服務的 WSDL 和 SLA。然后它再與提供者協(xié)商把 SLA 正規(guī)化、確定下來并綁定到它的 Web 服務。

圖 1. SLA 保證的 Web 服務的體系架構(gòu)


 

為現(xiàn)實世界做準備:測試機制

必須監(jiān)視任何符合 HTTP、HTTPS、SOAP、UDDI 和 Web 服務描述語言(Web Service Description Language,WSDL)的由 SLA 保證的 Web 服務的可伸縮性和性能。在把 SLA 保證的 Web 服務投入到生產(chǎn)環(huán)境之前,必須解決所有的 SOAP、WSDL 和其它的互操作性問題。如果服務無法滿足一定的標準,按照 SLA 的條款,提供服務的提供者可能要付財政責任,所以確保所有這些問題都在控制范圍內(nèi)特別重要。

在建立 SLA 保證的 Web 服務之前,應該使用測試機制 — 比如來自 PushtoTest 的工具和腳本 —(請參閱下面的參考資料部分獲得鏈接)來測試該 Web 服務的各種協(xié)議和組件。在啟動服務后,這些測試工具可以充當 SLA 監(jiān)視器。

表 1 是一個核對表示例,當開發(fā)者測試一個將被 SLA 保證的服務時,他應該考慮這個表。

測試類型 問題 有狀態(tài) 當您使用 SOAP 設置服務器值時,服務器在并發(fā)的狀態(tài)下是否正確響應? 訪問 一個未經(jīng)授權(quán)的用戶能成功訪問只有經(jīng)過授權(quán)的管理員才能使用的控制權(quán)嗎? 響應時間 Web 服務響應時是不是花費的時間太長(例如,超過了 10 秒)? 超時 當 Web 服務超時時會發(fā)生什么事情? 版本 新的構(gòu)造會破壞現(xiàn)有 Web 服務的功能嗎?

 
規(guī)則的例外情況

象任何協(xié)議或保險單一樣,SLA 通常會指定其條款中的例外情況。Web 服務的 SLA 應該包含關(guān)于例外情況的詳細信息。我將隨意將它們分為四類:故障、不受服務提供者直接控制的網(wǎng)絡問題、拒絕服務和預訂的維護。表 2 說明了可以歸入這些類別的某些特定情況。

只要客戶公司可以得到當機期間的適當賠償,還可以添加其它一些例外情況來適應提供者的情況。通過在 SLA 中包含進例外情況,提供者可以在出現(xiàn)問題或網(wǎng)絡損耗時免負責任。另一方面,如果競爭的服務提供帶有極少例外情況的 SLA,客戶可以選擇那些在業(yè)務運轉(zhuǎn)中提供更長正常運行時間并且有更好的服務保障的協(xié)議。即使 99.5%、99.9% 和 99.999% 這幾個正常運行時間可用性保證之間的差別也可以影響選擇 SLA 的決策者。

表 2. SLA 中可以潛在包含的例外情況

類型 示例 故障 硬件故障(請注意,錯誤的硬件極少)
遠程通信故障(例如,提供者無意切斷了光纜線)
軟件錯誤/缺陷
監(jiān)視/測量系統(tǒng)故障
不受服務提供者直接控制的網(wǎng)絡問題 主干對等端問題(例如,UUnet 在加利福尼亞的一個路由器壞了,拒絕因特網(wǎng)服務進入整個西海岸)
DNS 不受服務提供者的直接控制
拒絕服務 客戶疏忽/明知故犯
網(wǎng)絡流量過大、黑客攻擊和一般攻擊
不可抗力、戰(zhàn)爭、罷工、電訊不可用、無法得到提供 SLA 所需的供給或設備。
預訂的
維護
硬件升級
軟件升級
備份


潛在問題

雖然 SLA 的重點是最大上載可用性和帶寬的保證,但 SLA 無法為那些對延遲敏感的 Web 服務應用程序保證一致的響應時間。延遲是數(shù)據(jù)包從一個地點到另一個地點然后返回這一個來回所花費的時間(通常以毫秒計)。當數(shù)據(jù)包完成它的旅途花費的時間太長時就會發(fā)生延遲問題。例如,當 Web 服務產(chǎn)生的音頻開始斷斷續(xù)續(xù)或者鼠標指針開始微微顫抖的時候,您就會注意到這些問題。

SLA 應該指定給定時間周期(假設一個月)內(nèi)的平均來回延遲和數(shù)據(jù)報丟失。它應該把平均來回延遲定義為它在網(wǎng)絡和其目的地之間的平均來回包傳送,并把包丟失定義為在數(shù)據(jù)傳送的來回時間內(nèi)丟失包占總包數(shù)的百分比。協(xié)議應該把這種丟失限制到一定程度 — 假設 1% 或更少 — 如果在同意的時間段內(nèi)這種丟失超過了這個程度還應該指定賠償,包括償還或退款。

結(jié)束語

目前為止,我已經(jīng)說明了 SLA 保證的 Web 服務的技術(shù)參數(shù)。如果您計劃為您的付費客戶提供 Web 服務,他們通常都想要一個 SLA 以確保獲得他們期望的投資回報。本文中討論的主題應該會讓您在準備自己的 Web 服務以滿足 SLA 的需求方面處于領(lǐng)先地位。

本文并沒有討論可用于估量客戶期望的各種工具;在真實的商界,您可以發(fā)現(xiàn)即便您的服務滿足同意的服務品質(zhì),您的客戶仍可能對服務不滿意,因為技術(shù)上的服務交付能力還沒有達到企業(yè)的期望。在這些情況下,客戶和提供者必須就協(xié)議條款重新談判以確定滿足客戶的服務品質(zhì)。對于開發(fā)者,在創(chuàng)建和實現(xiàn) Web 服務時記住這一點很重要。開發(fā)者必須既考慮客戶的業(yè)務期望又考慮技術(shù)期望。

參考資料

  • 請了解更多關(guān)于 PushToTest 的知識來測試和監(jiān)控 Web 服務。
  • 請閱讀 The Complete Book of Middleware,它主要討論系統(tǒng)設計的重要原則和優(yōu)先考慮的問題,并強調(diào)電子商務和分布式集成系統(tǒng)的增長帶來的新需求。
  • 請閱讀 Enterprise Systems Integration, Second Edition,它向您提供企業(yè)內(nèi)部機制和技術(shù)訣竅并確保成功地集成系統(tǒng)。
  • 請閱讀 Anbazhagan Mani 和 Arun Nagarajan 所著的“理解Web服務的服務質(zhì)量”(developerWorks,2002 年 1 月)來改善您的 Web 服務的性能。
  • 這本面向 Domino 管理員的 IBM Redbook 描述了制定一個服務品質(zhì)協(xié)議的具體細節(jié)。
  • 一旦 Web 服務就緒,您就可以在 IBM 的 UDDI 版本 2 注冊中心中發(fā)布它,這個注冊中心的特征是有圖形用戶界面和一致的 API 供大家公用。

關(guān)于作者

Judith M. Myerson 是一位系統(tǒng)設計師和工程師。她對中間件技術(shù)、企業(yè)范圍的系統(tǒng)、數(shù)據(jù)庫技術(shù)、應用程序開發(fā)、網(wǎng)絡管理、分布式系統(tǒng)、基于組件的技術(shù)和項目管理都很感興趣。您可以通過
jmyerson@bellatlantic.net 與她聯(lián)系。

發(fā)布:2025-09-18 22:00    編輯:泛普軟件 · xiaona    [打印此頁]    [關(guān)閉]