<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          面試官:你都監(jiān)控 Redis 哪些指標(biāo)?

          共 3861字,需瀏覽 8分鐘

           ·

          2021-11-05 15:45

          原文鏈接:blog.51cto.com/yht1990/2503819

          監(jiān)控 Redis 哪些指標(biāo)?
          這是一個(gè)常見的面試題,直接上菜

          監(jiān)控指標(biāo)

          • 性能指標(biāo):Performance
          • 內(nèi)存指標(biāo): Memory
          • 基本活動(dòng)指標(biāo):Basic activity
          • 持久性指標(biāo): Persistence
          • 錯(cuò)誤指標(biāo):Error
          • 性能指標(biāo):Performance


          NameDescription
          latencyRedis響應(yīng)一個(gè)請求的時(shí)間
          instantaneous_ops_per_sec平均每秒處理請求總數(shù)
          hi rate(calculated)緩存命中率(計(jì)算出來的)


          內(nèi)存指標(biāo): Memory


          NameDescription
          used_memory已使用內(nèi)存
          mem_fragmentation_ratio內(nèi)存碎片率
          evicted_keys由于最大內(nèi)存限制被移除的key的數(shù)量
          blocked_clients由于BLPOP,BRPOP,or BRPOPLPUSH而備阻塞的客戶端


          基本活動(dòng)指標(biāo):Basic activity


          NameDescription
          connected_clients客戶端連接數(shù)
          conected_lavesslave數(shù)量
          master_last_io_seconds_ago最近一次主從交互之后的秒數(shù)
          keyspace數(shù)據(jù)庫中的key值總數(shù)


          持久性指標(biāo): Persistence


          NameDescription
          rdb_last_save_time最后一次持久化保存磁盤的時(shí)間戳
          rdb_changes_sice_last_save自最后一次持久化以來數(shù)據(jù)庫的更改數(shù)


          錯(cuò)誤指標(biāo):Error


          NameDescription
          rejected_connections由于達(dá)到maxclient限制而被拒絕的連接數(shù)
          keyspace_misseskey值查找失敗(沒有命中)次數(shù)
          master_link_down_since_seconds主從斷開的持續(xù)時(shí)間(以秒為單位)


          監(jiān)控方式


          • redis-benchmark
          • redis-stat
          • redis-faina
          • redislive
          • redis-cli
          • monitor
          • showlog
          • 1)get:獲取慢查詢?nèi)罩?/span>
          • 2)len:獲取慢查詢?nèi)罩緱l目數(shù)
          • 3)reset:重置慢查詢?nèi)罩?/span>


          相關(guān)配置:

          slowlog-log-slower-than 1000 # 設(shè)置慢查詢的時(shí)間下線,單位:微秒slowlog-max-len 100 # 設(shè)置慢查詢命令對應(yīng)的日志顯示長度,單位:命令數(shù)
          • info(可以一次性獲取所有的信息,也可以按塊獲取信息)
          • 1)server:服務(wù)器運(yùn)行的環(huán)境參數(shù)
          • 2)clients:客戶端相關(guān)信息
          • 3)memory:服務(wù)器運(yùn)行內(nèi)存統(tǒng)計(jì)數(shù)據(jù)
          • 4)persistence:持久化信息
          • 5)stats:通用統(tǒng)計(jì)數(shù)據(jù)
          • 6)Replication:主從復(fù)制相關(guān)信息
          • 7)CPU:CPU使用情況
          • 8)cluster:集群信息
          • 9)Keypass:鍵值對統(tǒng)計(jì)數(shù)量信息


          終端info命令使用


          • ./redis-cli info 按塊獲取信息 | grep 需要過濾的參數(shù)
          • ./redis-cli info stats | grep ops


          交互式info命令使用

           #./redis-cli> info server

          性能監(jiān)控


          redis-cli info | grep ops # 每秒操作數(shù)

          內(nèi)存監(jiān)控


          [root@CombCloud-2020110836 src]# ./redis-cli info | grep used | grep humanused_memory_human:2.99M  # 內(nèi)存分配器從操作系統(tǒng)分配的內(nèi)存總量used_memory_rss_human:8.04M  #操作系統(tǒng)看到的內(nèi)存占用,top命令看到的內(nèi)存used_memory_peak_human:7.77M # redis內(nèi)存消耗的峰值used_memory_lua_human:37.00K   # lua腳本引擎占用的內(nèi)存大小


          由于BLPOP,BRPOP,or BRPOPLPUSH而備阻塞的客戶端

          [root@CombCloud-2020110836 src]# ./redis-cli info | grep blocked_clientsblocked_clients:0

          由于最大內(nèi)存限制被移除的key的數(shù)量

          [root@CombCloud-2020110836 src]# ./redis-cli info | grep evicted_keysevicted_keys:0  #

          內(nèi)存碎片率

          [root@CombCloud-2020110836 src]# ./redis-cli info | grep mem_fragmentation_ratiomem_fragmentation_ratio:2.74

          已使用內(nèi)存

          [root@CombCloud-2020110836 src]# ./redis-cli info | grep used_memory:used_memory:3133624

          基本活動(dòng)指標(biāo)


          redis連接了多少客戶端


          通過觀察其數(shù)量可以確認(rèn)是否存在意料之外的連接。如果發(fā)現(xiàn)數(shù)量不對勁,就可以使用lcient list指令列出所有的客戶端鏈接地址來確定源頭。

          [root@CombCloud-2020110836 src]# ./redis-cli info | grep connected_clientsconnected_clients:1[root@CombCloud-2020110836 src]# ./redis-cli info | grep connectedconnected_clients:1   # 客戶端連接數(shù)量connected_slaves:1   # slave連接數(shù)量

          持久性指標(biāo)


          [root@CombCloud-2020110836 src]# ./redis-cli info | grep rdb_last_save_timerdb_last_save_time:1591876204  # 最后一次持久化保存磁盤的時(shí)間戳[root@CombCloud-2020110836 src]# ./redis-cli info | grep rdb_changes_since_last_saverdb_changes_since_last_save:0   # 自最后一次持久化以來數(shù)據(jù)庫的更改數(shù)

          錯(cuò)誤指標(biāo)


          由于超出最大連接數(shù)限制而被拒絕的客戶端連接次數(shù),如果這個(gè)數(shù)字很大,則意味著服務(wù)器的最大連接數(shù)設(shè)置得過低,需要調(diào)整maxclients

          [root@CombCloud-2020110836 src]# ./redis-cli info | grep connected_clientsconnected_clients:1

          key值查找失敗(沒有命中)次數(shù),出現(xiàn)多次可能是被hei ke gongjji

          [root@CombCloud-2020110836 src]# ./redis-cli info | grep keyspacekeyspace_misses:0

          主從斷開的持續(xù)時(shí)間(以秒為單位)

          [root@CombCloud-2020110836 src]# ./redis-cli info | grep rdb_changes_since_last_saverdb_changes_since_last_save:0

          復(fù)制積壓緩沖區(qū)如果設(shè)置得太小,會導(dǎo)致里面的指令被覆蓋掉找不到偏移量,從而觸發(fā)全量同步

          [root@CombCloud-2020110836 src]# ./redis-cli info | grep backlog_sizerepl_backlog_size:1048576

          通過查看sync_partial_err變量的次數(shù)來決定是否需要擴(kuò)大積壓緩沖區(qū),它表示主從半同步復(fù)制失敗的次數(shù)

          [root@CombCloud-2020110836 src]# ./redis-cli info | grep sync_partial_errsync_partial_err:1

          redis性能測試命令

          ./redis-benchmark -c 100 -n 5000

          說明:100個(gè)連接,5000次請求對應(yīng)的性能。


          - END -

          ?推薦閱讀?

          Kubernetes 企業(yè)容器云平臺運(yùn)維實(shí)戰(zhàn)?
          Linux運(yùn)維工程師的 6 類好習(xí)慣和 23 個(gè)教訓(xùn)
          一名運(yùn)維小哥對運(yùn)維規(guī)則的10個(gè)總結(jié),收藏起來
          NoOps 來了,DevOps 工程師的未來在何方?
          終于明白了 DevOps 與 SRE 的區(qū)別!
          我的云服務(wù)器被植入挖礦木馬,CPU飆升200%
          Kubernetes上生產(chǎn)環(huán)境后,99%都會遇到這2個(gè)故障
          如何用 Kubernetes 實(shí)現(xiàn) CI/CD 發(fā)布流程?| 漫畫
          K8s kubectl 常用命令總結(jié)(建議收藏)
          Kubernetes 的這些核心資源原理,你一定要了解
          我在創(chuàng)業(yè)公司的 “云原生” 之旅
          基于Nginx實(shí)現(xiàn)灰度發(fā)布與AB測試
          編寫 Dockerfile 最佳實(shí)踐
          12年資深運(yùn)維老司機(jī)的成長感悟



          點(diǎn)亮,服務(wù)器三年不宕機(jī)

          瀏覽 51
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  夜夜躁恨恨躁爱躁 | 玖玖资源站中文字幕 | 亚洲网络视频 | 国产区视频在线观看 | 天天看天天日 |