Bucket Cache原始碼閱讀

2021-08-03 03:49:56 字數 772 閱讀 2962

如何開啟:

配置hbase-site.xml的如下幾個引數:

hbase.bucketcache.ioengine

file:/ssd/hbase/cache.data

hbase-site.xml

hbase.bucketcache.bucket.sizes

5120,9216,17408,33792,41984,50176,58368,66560,99328,132096,197632,263168,394240,525312,787456,1049600,4195328,8389632,16778240,25166848

hbase-site.xml

hbase.bucketcache.size

204800

hbase-site.xml

hbase.bucketcache.combinedcache.enabled

false

hbase-site.xml

bucketcache類中的關鍵函式及作用:

(1)getioenginefromname:通過配置檔案確定是file、offheap還是heap

(2)cacheblockwithwait:將cachekey和cacheditem放入ramcache中

(3)getblock:先查詢ramcache中是否存在,不存在則查詢backingmap中的key-value鍵值對,是否有該資料塊

(4)evictblock:先從ramcache中移除,然後繼續從bakingmap中移除

SynchronousQueue原始碼閱讀心得

synchronousqueue 簡寫為sq 同步佇列中,讀執行緒與寫執行緒只有相互匹配時才能完成一次完整的讀寫操作。而讀與寫的匹配依賴於transferqueue或transferstack中的transfer sq中重要的資料結構有transferqueue和transferstack,還有qn...

Vector和Hashtable原始碼閱讀與理解

vector是執行緒安全的arraylist public synchronized void insertelementat e obj,int index ensurecapacityhelper elementcount 1 system.arraycopy elementdata,index...

seata xid是什麼 seata原始碼閱讀筆記

seata原始碼閱讀筆記 本文基於v0.8.0版本,本文沒貼 seata中的三個重要部分 tc 事務協調器,維護全域性事務和分支事務的狀態,驅動全域性提交或回滾,就是seata的服務端。tm 事務管理器,開始全域性事務,提交或回滾全域性事務。rm 資源管理器,管理正在處理的分支事務的資源,向tc註冊...