1. 程式人生 > >Flashcache基本使用及注意事項

Flashcache基本使用及注意事項

Flashcache安裝配置

安裝flashcache

wgethttps://github.com/facebook/flashcache/archive/master.zip

下載下來的檔案可能不是以.zip結尾的檔案,使用file檢視屬性後解壓進入資料夾安裝

cd flashcache-master

make

make install

配置

# flashcache_create --help

flashcache_create: invalid option -- '-'

Usage: flashcache_create [-v] [-pback|thru|around] [-b block size] [-m md block size] [-s cache size] [-aassociativity] cachedev ssd_devname disk_devname

Usage : flashcache_create Cache Modeback|thru|around is required argument

Usage : flashcache_create Default units for-b, -m, -s are sectors, or specify in k/M/G. Default associativity is 512.

flashcache_create相關引數說明:

-p:快取模式 writeback(資料先寫到SSD,隨後寫到普通硬碟),
                    writethrough(資料同時寫到SSD和普通硬碟),


                    writearound(資料繞過SSD,直接寫到普通硬碟)三種,三種模式的所有讀都會被快取到flashcache可以通過dev.flashcache.<cachedev>.cache_all引數調整
-s:快取大小,可選項,如果未指定則整個SSD裝置被用於快取,預設的計數單位是扇區(sectors),但是可以接受k/m/g單位。
-b:指定塊大小,可選項,預設為4KB,必須為2的指數。預設單位為扇區。也可以用K作為單位,一般選4KB。
-f:強制建立,不進行檢查

-m:裝置元資料塊大小,只有writeback需要儲存metadata塊,預設4K

有三種模式:

Writethrough - safest, all writes arecached to ssd but also written to disk

immediately. If your ssd has slower writeperformance than your disk (likely

for early generation SSDs purchased in2008-2010), this may limit your system

write performance. All disk reads arecached (tunable).

資料同時寫到ssd和普通硬碟

Writearound - again, very safe, writes arenot written to ssd but directly to

disk. Disk blocks will only be cached afterthey are read. All disk reads

are cached (tunable).

資料繞過ssd,直接寫到普通硬碟

Writeback - fastest but less safe. Writesonly go to the ssd initially, and

based on various policies are written todisk later. All disk reads are

cached (tunable).

資料先寫到ssd,隨後寫到普通硬碟

使用50G用sdb1的空間,做sdc1的快取,塊大小為4KB

[[email protected] utils]# flashcache_create -v-p back -s 50G  cachedev /dev/sdb1/dev/sdc1

cachedev cachedev, ssd_devname /dev/sdb1,disk_devname /dev/sdc1 cache mode WRITE_BACK

block_size 8, md_block_size 8, cache_size104857600

Flashcache metadata will use 275MB of your7889MB main memory

Flashcache Module already loaded

version string "git commit:

"

Creating FlashCache Volume : "echo 03907016904 flashcache /dev/sdc1 /dev/sdb1 cachedev 1 2 8 104857600 512 0 0 8 |dmsetup create cachedev"

檢視剛剛建立的DM裝置

[[email protected] utils]# dmsetup status

cachedev: 0 3907016904 flashcache stats:

         reads(83),writes(0)

         readhits(0), read hit percent(0)

         writehits(0) write hit percent(0)

         dirtywrite hits(0) dirty write hit percent(0)

         replacement(0),write replacement(0)

         writeinvalidates(0), read invalidates(0)

         pendingenqueues(0), pending inval(0)

         metadatadirties(0), metadata cleans(0)

         metadatabatch(0) metadata ssd writes(0)

         cleanings(0)fallow cleanings(0)

         noroom(0) front merge(0) back merge(0)

         force_clean_block(0)

         diskreads(83), disk writes(0) ssd reads(0) ssd writes(83)

         uncachedreads(0), uncached writes(0), uncached IO requeue(0)

         diskread errors(0), disk write errors(0) ssd read errors(0) ssd write errors(0)

         uncachedsequential reads(0), uncached sequential writes(0)

         pid_adds(0),pid_dels(0), pid_drops(0) pid_expiry(0)

         lruhot blocks(6527744), lru warm blocks(6527744)

         lrupromotions(0), lru demotions(0)

檢視狀態

可以在下面的路徑檢視到一個裝置

[[email protected] utils]# mount /dev/mapper/cachedev /test -t xfs

掛載

[[email protected] /]# mount/dev/mapper/cachedev /test -t xfs

刪除

dmsetup remove cachedev

flashcache destory /dev/sdb1

自動載入模組

開機自動載入模組配置:

vim /etc/sysconfig/modules/flashcache.modules

#! /bin/sh
/sbin/modinfo -F filename flashcache > /dev/null 2>&1 
if [ $? -eq 0 ]; then
    /sbin/modprobe flashcache
fi 
chmod +x  /etc/sysconfig/modules/flashcache.modules

模組的自動載入最好不要採用寫入/etc/rc.local的方式

##載入flashcache模組
modprobe flashcache                   

##檢視flashcache模組是否載入
[[email protected] ~]# lsmod |grep flashcache 
flashcache 92068 0 
dm_mod 84209 14 flashcache,dm_mirror,dm_log

##刪除flashcache模組
rmmod flashcache

Flashcache引數優化

[root@localhost ]#sysctl dev.flashcache dev.flashcache.sdc+sdb2.io_latency_hist=0 dev.flashcache.sdc+sdb2.do_sync=0 dev.flashcache.sdc+sdb2.stop_sync=0 dev.flashcache.sdc+sdb2.dirty_thresh_pct=20 dev.flashcache.sdc+sdb2.max_clean_ios_total=4 dev.flashcache.sdc+sdb2.max_clean_ios_set=2 dev.flashcache.sdc+sdb2.do_pid_expiry=0 dev.flashcache.sdc+sdb2.max_pids=100 dev.flashcache.sdc+sdb2.pid_expiry_secs=60 dev.flashcache.sdc+sdb2.reclaim_policy=0 dev.flashcache.sdc+sdb2.zero_stats=0 dev.flashcache.sdc+sdb2.fast_remove=0 dev.flashcache.sdc+sdb2.cache_all=1 dev.flashcache.sdc+sdb2.fallow_clean_speed=2 dev.flashcache.sdc+sdb2.fallow_delay=900 dev.flashcache.sdc+sdb2.skip_seq_thresh_kb=0 dev.flashcache.sdc+sdb2.clean_on_read_miss=0 dev.flashcache.sdc+sdb2.clean_on_write_miss=0 dev.flashcache.sdc+sdb2.lru_promote_thresh=2 dev.flashcache.sdc+sdb2.lru_hot_pct=75 dev.flashcache.sdc+sdb2.new_style_write_merge=0

針對MySQL作此優化

dev.flashcache.sdc+sdb2.cache_all=1 預設值1表示快取所有,0都不快取,另外通過程序黑白名單控制 dev.flashcache.sdc+sdb2.

相關推薦

Flashcache基本使用注意事項

Flashcache安裝配置 安裝flashcache wgethttps://github.com/facebook/flashcache/archive/master.zip 下載下來的檔案可能不是以.zip結尾的檔案,使用file檢視屬性後解壓進入資料夾安裝 cd flashcache-mas

【C++】向量(vector) 基本使用方法注意事項

介紹: 向量(Vector)是一個封裝了動態大小陣列的順序容器(Sequence Container)。跟任意其它型別容器一樣,它能夠存放各種型別的物件。可以簡單的認為,向量是一個能夠存放任意型別的動態陣列。 特點: 1.順序序列 順序容器中的元素按照嚴格的線性順序排序。可以通過元素

python中檔案基本操作命令注意事項

我們如果想通過程式去修改檔案的名字、刪除檔案或資料夾、獲得路徑下的檔案列表等等操作,python提供了有關這些操作的模組(os模組),需要匯入模組import os. 修改檔名字,刪除檔案:目錄相關

Oracle儲存過程的基本語法注意事項

oracle 儲存過程的基本語法 1.基本結構 CREATE OR REPLACE PROCEDURE 儲存過程名字 ( 引數1 IN NUMBER, 引數2 IN NUMBER ) IS 變數1 INTEGER :=0; 變數2 DATE; BEGIN E

【VUE】git命令列程式碼提交流程注意事項

本篇為我在提交程式碼的過程中使用過的命令 僅做記錄參考 git命令還有很多 其他功能 可自行百度 命令git add (1)git add . 提交全部修改檔案 (2)git add +檔名 提交單個檔案 命令 git commit -m '描述’ eg: git commi

重灌系統後,重新安裝ORACLE加環境變數配置、客戶端PL/SQL的安裝過程,注意事項(避免再次踩坑)

(1)首先了解什麼是OERACLE及Oracle與PL/SQL是什麼關係: ORACLE是資料庫,有客戶端和伺服器; PLSQL Developer只是第三方工具,服務於ORACLE,類似的工具還有Toad,sqlplus,sql developer等等; 安裝PLSQL Developer

Windows下RabbitMQ安裝注意事項

Windows下RabbitMQ安裝及注意事項 簡介 背景 1.      RabbitMQ是一個由erlang開發的AMQP(Advanved Message Queue)的開源實現。 RabbitMQ是實現AMQP(高階訊息佇列協議)的訊

XV6環境搭建注意事項

Ubuntu16.04SLT 64位 工具鏈 sudo apt-get install gcc-multilib libsdl1.2-dev, libtool-bin, libglib2.0-dev, libz-dev, and libpixman-1-dev.     下載

仙人劍花怎麼養 仙人劍花的養殖方法注意事項

劍花也稱霸王花、七星劍花、龍骨花,為仙人掌科量天尺屬植物量天尺的花。夏、秋間採收淨花,縱向切開(基部相連),略蒸後,晒乾。量天尺又名:龍骨花(海南保亭),霸王鞭(海南三亞,廣東肇慶),三角柱、三稜箭(北京俗稱)。很多朋友不知道如何養殖仙人劍花,下面來介紹一下。 從生長環境溫度方面來說

阿里雲備案幕布申請郵寄注意事項

阿里雲備案需要幕布(貌似個別地區,例如魔都是不需要幕布的),阿里雲免費提供幕布,很多使用者不清楚阿里雲幕布去哪申請,阿里雲惠網分享阿里雲備案關於幕布相關問題: 一:阿里雲幕布長啥樣? 二:備案幕布申請: 阿里雲備案系統即可申請幕布,首先需要先完成備案初審,初審後登入 阿里雲備案系統,辦理網站

CSS變數實用指南注意事項

近年來,一些動態特性已經開始成為 CSS 語言本身的一部分。 CSS變數 – 官方的術語為 “自定義屬性” – 已經已經加入規範並且具有很好的瀏覽器支援,而 CSS mixins 目前正在開發中 。 在本文中,你將瞭解如何開始將CSS變數整合到CSS開發工作流程中,讓你的樣式表更好維護,且減少重複。 讓我

MySQL索引的使用注意事項

索引是儲存引擎用於快速找到記錄的一種資料結構。索引優化應該是對查詢效能優化最有效的手段了。索引能夠輕易將查詢效能提高几個數量級,"最優"的索引有時比一個"好的"索引效能要好兩個數量級。 索引可以包含一個(單列索引)或多個列(組合索引)的值。 想要使用組合索引首先要了解一個原則:最左字首原則。如果索引包含多

Git- .gitignore匹配規則注意事項

.gitignore檔案的匹配規則 Windows中可以通過echo 命令或者用Windows中的bash建立.gitignore檔案。其主要的匹配規則如下: *.a # 忽略所有 .a 結尾的檔案 !lib.a # 但 lib.a 除外 TODO # 僅僅

分享知識-快樂自己:Struts2(動態方法、動態結果、萬用字元、方法內部跳轉、action跳轉、OGNL 的使用注意事項

這裡主要以案例演示:涵蓋以下知識點 1、動態方法呼叫:使用關鍵 符號 ! 進行操作   例如:/名稱空間 ! 方法名 2、動態結果集:就是說,通過後臺返回的結果 ${} 獲取,重定向到符合預期的頁面。 3、萬能萬用字元:*_*  :第一個 * 為 類名、第二個 * 為方

iOS啟動頁尺寸注意事項

執行環境:Xcode 7.2                    OS X 10.11 1、點選LauchImage,在右側選擇需要支援的裝置及支援的螢幕方向 2、點選圖片的位

elasticsearch(五)java 使用批量操作bulk注意事項

1,BulkRequest物件可以用來在一次請求中,執行多個索引、更新或刪除操作     且允許在一次請求中進行不同的操作,即一次請求中索引、更新、刪除操作可以同時存在 BulkRequest bulkRequest = new BulkRequest(); bulk

實戰Java高併發程式設計(四、鎖的優化注意事項

在多核時代,使用多執行緒可以明顯地提升系統的效能。但事實上,使用多執行緒會額外增加系統的開銷。對於單任務或單執行緒的應用來說,其主要資源消耗在任務本身。對於多執行緒來說,系統除了處理功能需求外,還需要維護多執行緒環境特有的資訊,如執行緒本身的元資料,執行緒的排程,執行緒上下文的切換等。 4.1有

vatic—視訊標註工具安裝出現error注意事項

1.安裝參考:(主要看的CSDN部落格) 部落格 https://blog.csdn.net/baidu_26788951/article/details/80053760 官網 Github:https://github.com/cvondrick/vatic 2.安裝注意: 兩個

Hexo+git建站流程注意事項

建站基本流程 1、安裝nodejs、git 2、安裝hexo $ npm install -g hexo-cli 3、建站,folder為站點資料夾名稱 $ hexo init <folder> $ cd <folder> $ npm inst

水電驗收——裝修水電施工完成後應該如何驗收注意事項

裝修房子的時候水電裝修是一定不能馬虎的。都知道水電在我們日常生活中的使用率是很高的,直接影響著人們正常的生活和起居,那麼為了不影響以後居住時的使用,在裝修時水電施工環節上一定要謹慎對待。因為水電裝修是比較典型的隱蔽工程,一旦裝修好是很難返修的。所以在完成水電施工完成之後,一定要進行嚴格的驗收