ATS名词术语(待续)
ATS名詞術(shù)語(yǔ)
副本(alternate)
緩存對(duì)象(cache object)的一種變體,最初創(chuàng)建該術(shù)語(yǔ)是為了處理HTTP協(xié)議中的VARY機(jī)制(RFC2616#sec14.44),現(xiàn)在多用于其它的目的。一個(gè)對(duì)象的所有副本必須以某種方式等價(jià),也就是說,它們是同一個(gè)流的等價(jià)形式,最常用的一個(gè)例子就是,一個(gè)流既有普通版本也有壓縮版本。
緩存分片(cache fragment)
緩存的內(nèi)容存儲(chǔ)單元,緩存的讀操作每次只能讀取一個(gè)完整分片,但是寫操作可以按組一次寫入多個(gè)完整分片。每個(gè)分片都對(duì)應(yīng)一個(gè)緩存目錄項(xiàng),它描述了該分片在磁盤緩存中的存放位置,比如offset和長(zhǎng)度。
緩存ID(cache ID)
磁盤緩存中一個(gè)對(duì)象固定長(zhǎng)度(8字節(jié))的標(biāo)識(shí)符,由緩存key使用MD5哈希算法得到。
緩存Key(cache Key)
磁盤緩存中一個(gè)對(duì)象的全局唯一標(biāo)識(shí)符,是字節(jié)序列,默認(rèn)是緩存對(duì)象的URL。
緩存對(duì)象(cache object)
磁盤緩存中最小自含性(self contained)數(shù)據(jù)單元。緩存對(duì)象是源站返回的數(shù)據(jù)流的等價(jià)存儲(chǔ)版本(因?yàn)榭赡軙?huì)有些微修改)。單個(gè)對(duì)象可以有多個(gè)所謂的副本(alternate)。
緩存分區(qū)(cache partition)
ATS中根據(jù)相關(guān)協(xié)議,源站或是其它規(guī)則對(duì)緩存對(duì)象做區(qū)分和分開存儲(chǔ)的一種磁盤劃分機(jī)制。緩存分區(qū)的定義和管理的討論詳見《緩存劃分》。
緩存容量(cache span)
storage.config配置文件中每行描述的使用到的磁盤物理存儲(chǔ)容量。
存儲(chǔ)單元(storage unit)
緩存容量的過時(shí)叫法。
緩存帶(cache stripe)
單個(gè)緩存容量(cache span)內(nèi)的一類位于同一磁盤上的持久化緩存單元。一個(gè)緩存容量會(huì)包括多個(gè)緩存帶,緩存帶總是完全位于單塊物理磁盤上,是最小獨(dú)立的(即使發(fā)生磁盤故障)存放數(shù)據(jù)不受影響的存儲(chǔ)單元。在相同緩存容量內(nèi)不同緩存帶上存放的數(shù)據(jù)沒有差別,僅是緩存帶不同。
緩存標(biāo)簽(cache tag)
緩存ID的尾部幾個(gè)比特(當(dāng)前12bit),用于進(jìn)行磁盤操作前對(duì)緩存目錄項(xiàng)(cache directory)做的初步身份檢查(identity check)。
緩存分卷(cache volume)
用戶在配置文件volume.config中定義的緩存持久化存儲(chǔ)單元。為了增強(qiáng)健壯性,緩存分卷默認(rèn)會(huì)分布到整個(gè)緩存容量內(nèi)部,緩存容量和緩存分卷的交集就是緩存帶。
目錄項(xiàng)(directroy entry)
內(nèi)存中用來描述一個(gè)緩存分片的結(jié)構(gòu)體,即源碼中的Dir。
目錄桶(directory bucket)
相鄰目錄項(xiàng)的固定大小(當(dāng)前為4)的分組,用于哈希桶的維護(hù)和優(yōu)化。
目錄段(directory segment)
目錄桶的連續(xù)分組,每個(gè)緩存帶中都有一個(gè)目錄段的集合,每個(gè)目錄段中有相同數(shù)目的目錄桶。不同緩存帶中每個(gè)目錄段所含目錄桶的個(gè)數(shù)略有不同。管理目錄段的目的是讓free list存放目錄桶的指針,并將free list存放目錄桶的指針。
寫光標(biāo)(write cursor)
新數(shù)據(jù)寫到磁盤上的緩存帶的位置。
對(duì)象緩存(cache store)
緩存對(duì)象的數(shù)據(jù)庫(kù)。
新鮮度(fresh)
緩存對(duì)象的一種狀態(tài),該狀態(tài)下的緩存對(duì)象能直接從緩存中讀出并響應(yīng)客戶端的請(qǐng)求。新鮮的緩存對(duì)象并不滿足或是超過源站定義的過期時(shí)間,它們也還沒有達(dá)到算法確定的過期時(shí)間(stale age)。
驗(yàn)證(revalidation)
驗(yàn)證當(dāng)前緩存的對(duì)象是否合法(valid)。常常通過在請(qǐng)求頭中添加If-Modified-Since頭來讓源站驗(yàn)證內(nèi)容的合法性,源站并不會(huì)再次發(fā)送回響應(yīng)內(nèi)容。
continuation
包含狀態(tài)的一種可調(diào)用對(duì)象,ATS就是使用該機(jī)制去實(shí)現(xiàn)回調(diào)和連續(xù)計(jì)算。連續(xù)計(jì)算對(duì)網(wǎng)絡(luò)流量(traffic)的高效處理非常重要,因?yàn)樗鼙苊庠诘却獠渴录l(fā)生時(shí)產(chǎn)生的任何阻塞操作(blocking operation),在任何情況下,使用continuation機(jī)制可以使得其它操作仍能繼續(xù)進(jìn)行,直至外部事件發(fā)生,然后立即調(diào)用該continuation去繼續(xù)處理先前掛空的操作。也可以視作類似協(xié)程(co-routines)的處理。
事務(wù)(transaction)
包含客戶端的請(qǐng)求和響應(yīng),響應(yīng)可以來自源站,也可以來自緩存。一次事務(wù)開始于ATS接收到客戶端請(qǐng)求,終止于ATS發(fā)送出響應(yīng)。
會(huì)話(session)
客戶端和ATS的一個(gè)網(wǎng)絡(luò)連接,包括該連接上所有的請(qǐng)求和響應(yīng),隨客戶端打開連接而開始,隨連接關(guān)閉而終止。
全局插件(global plugin)
可以操作所有事務(wù)的插件,相對(duì)于remap插件。
remap插件(remap plugin)
一種特殊插件,它只對(duì)匹配上remap.config配置文件中定義的特定重映射規(guī)則的那些事務(wù)做操作,相對(duì)于全局插件。
源站
能夠提供原始內(nèi)容讓ATS緩存的一種HTTP服務(wù)器,常見的有Apache,nginx等。
總結(jié)
以上是生活随笔為你收集整理的ATS名词术语(待续)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。