《Redis高級(jí)功能-慢查詢?nèi)罩尽芬c(diǎn):
本文介紹了Redis高級(jí)功能-慢查詢?nèi)罩荆M麑?duì)您有用。如果有疑問,可以聯(lián)系我們。
Redis 提供了5種數(shù)據(jù)結(jié)構(gòu),但除此之外, Redis 還提供了注入慢查詢分析, Redis Shell 、 Pipeline 、事務(wù)、與 Lua 腳本、 Bitmaps 、 HyperLogLog 、 PubSub 、 GEO 等附加功能,這些功能可以在某些場景發(fā)揮很重要的作用.
慢查詢分析
許多存儲(chǔ)系統(tǒng)(如: MySQL )提供慢查詢?nèi)罩举澲_發(fā)與運(yùn)維人員定位系統(tǒng)存在的慢操作.所謂慢查詢?nèi)罩揪褪窍到y(tǒng)在命令執(zhí)行前后計(jì)算每條命令的執(zhí)行時(shí)間,當(dāng)超過預(yù)設(shè)閾值,就將這條命令的相關(guān)信息(例如:發(fā)生時(shí)間,耗時(shí),命令的詳細(xì)信息)記錄到慢查詢?nèi)罩局? Redis 也提供了類似的功能.
Redis 命令執(zhí)行流程:
如果 slowlog-log-slower-than=0 會(huì)記錄所有命令, slowlog-log-slower-than<0 對(duì)于任何命令都不會(huì)進(jìn)行記錄.
從字面意思看, slowlog-max-len 只是說明了慢查詢?nèi)罩咀疃啻鎯?chǔ)多少條,并沒有說明存放在哪里?實(shí)際上 Redis 使用了一個(gè)列表來存儲(chǔ)慢查詢?nèi)罩? slowlog-max-len 就是列表的最大長度.一個(gè)新的命令滿足慢查詢條件時(shí)被插入到這個(gè)列表中,當(dāng)慢查詢?nèi)罩玖斜硪烟幱谄渥畲箝L度時(shí),最早插入的一個(gè)命令將從列表中移出,例如 slowlog-max-len 設(shè)置長度為 64 .當(dāng)有第 65 條慢查詢?nèi)罩静迦氲脑?那么隊(duì)頭的第一條數(shù)據(jù)就出列,第 65 條慢查詢就會(huì)入列.
在 Redis 中有兩種修改配置的辦法,一種是修改配置文件,另一種是使用 config set 命令動(dòng)態(tài)修改.例如下面使用 config set 命令將 slowlog-log-slower-than 設(shè)置為 20000微妙 . slowlog-max-len 設(shè)置為 1024 :
config set slowlog-log-slower-than 20000
如果需要將 Redis 將配置持久化到當(dāng)?shù)嘏渲梦募?要執(zhí)行 config rewrite 命令.如下:
PHP學(xué)院為您提供精彩教程。
轉(zhuǎn)載請(qǐng)注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/10672.html