協同快取

協同快取

在協作環境下,由一組相互合作的快取伺服器共同服務於用戶。代理快取之間可以轉發用戶請求信息,當所有協作的代理都沒有用戶訪問的請求對象時,代理伺服器代表用戶向Web伺服器獲取相應請求對象。因此應確保快取體系結構中各代理快取之間能夠有效地合作,能保證快取系統性能的提高。

基本介紹

  • 中文名:協同快取
  • 外文名:Cooperative cache
  • 定義:提升Web服務的性能
  • 模組:信息搜尋、快取管理、預取
  • 系統:計算機
  • 套用學科:計算機原理
程式簡介,協同快取系統中的基本操作,現有的協作式快取系統,基於分散式管理的合作快取系統,基於集中式管理的合作快取系統,

程式簡介

為了提升Web服務的性能,簡單且兼具協同性的快取系統被廣泛套用於網際網路中。一般來說,Web快取系統由客戶端、快取代理和Web伺服器組成。快取代理置於伺服器和客戶端之間,它們合作為客戶端提供快取。當客戶端請求一個Web頁面時,它會先檢查自己的快取情況。如果失敗,它將向其中一個快取代理髮送頁面請求。如果所請求的頁面沒有在該代理處找到,它將向其協同代理髮送請求。如果在這些代理中部未找到所請求的頁面,請求將被傳送至遠程Web伺服器以獲得原始頁面。Web快取系統降低了頻寬的使用、Web伺服器的工作負擔和客戶端的查詢延遲。
Web快取系統在很大程度上提升了Web服務的性能。但是由MANET的移動性和資源約束,這種方案並不能直接套用於MANET環境中。MANET中的所有節點都是移動的,網路拓撲也隨之頻繁更換,所以在MANET中建立快取代理幾乎是不可能的。岡此,為實現MANET環境中的協同快取系統,必須要採用一種不同的方法。近來,學術界已提出一些用於在MANET中套用協同快取的方法。在這些方法中,每個移動節點都具備一定數量的快取空間,這些空間可以被自身或相鄰節點訪問。各個節點不僅能夠從自身的快取空問獲得請求數據,還能從其相鄰節點的快取空間中獲得。通過這種方法,每個節點就擁有了比它本身更大的快取空間。

協同快取系統中的基本操作

協同快取系統包括以下模組。
信息搜尋(或快取分辨):該模組用於處理客戶端尋找請求數據項的操作。返回的數據可能來自數據源的原始數據或移動節點的快取副本。
快取管理:包括三個子模組:快取準入控制,它決定是否快取所接收的數據項;快取替換,在快取空間已滿但還有新的數據項必須被快取時,它決定快取空間移除哪個快取項;快取一致性,它負責快取數據項與數據源的原始數據項同步。絕大多數方法都是採用基於生存時間(TTL,Time-to-live)的快取一致性策略,這裡給每個數據項指定一個TTL值,該值表示數據項存於快取空間的時間,快取數據項在TTL逝去前被視為是有效的。
預取:它負責決定哪個數據項應從數據源中預先取出以備將來使用。

現有的協作式快取系統

按照快取信息的保存位置。將協作式快取系統分為兩種:基於分散式管理的合作快取系統和基於集中式管理的合作快取系統。

基於分散式管理的合作快取系統

Harvest,Squid是基於分散式管理的合作快取系統,它們採用ICP協定,通稱為ICPS系統,其結構如圖1所示。其基本思想是如果一個請求在本地代理快取上得不到滿足,那么本地代理伺服器就向其兄弟和父親節點發出查詢命令,如果還不能命中。則繼續向上級節點查詢,直到在指定的有效時間內命中為止。它採用層次結構,簡單易行,但有兩個致命的缺點:其一,隨著相互協作的代理數目的增加,由查詢帶來的網路流量和時間延遲十分可觀;其二,ICP根本沒有協調每個代理快取的內容,在最壞情況下,所有的代理快取中的快取內容是一致的,最終使得協同快取系統沒有發揮出任何的優勢。
協同快取
圖1 ICPS系統結構

基於集中式管理的合作快取系統

基於集中式管理的合作快取系統的典型代表是CRISP系統,其結構如圖2所示。在CRISP中,代理的相互合作是通過地址映射伺服器完成的。當請求在一個代理中失效時,代理向地址映射伺服器發請求,地址映射伺服器根據地址映射表能夠確定在代理快取系統中是否有請求的檔案。若有,本地代理則從系統的其他代理中取回並快取檔案,然後返回給用戶;如果沒有,則直接向Web源伺服器發請求。通過使用地址映射伺服器,減少了代理之間的通信量,算法簡單,容易實現。但是隨著系統規模的增加,地址映射伺服器可能成為系統的瓶頸,造成網路擁塞,而且一旦其失效,各代理之間就無法合作,大大降低了系統的可用性。
協同快取
圖2 CRISP系統結構
check!

熱門詞條

聯絡我們