加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

Redis呼吁行器材风趣的有数用法

发布时间:2018-11-09 09:22:40 所属栏目:编程 来源:老钱
导读:我们每天都在行使 Redis 内置的呼吁行器材 redis-cli,久而久之觉得它就是一个简朴的交互式 Redis 数据布局手工操纵措施,可是它背后强盛的成果绝大大都同窗也许闻所未闻。本节我们一路来发掘这些鲜为人知的风趣用法。 执行单条呼吁 平常在会见 Redis 处事

redis-cli 对付每一种工具范例城市记录长度最大的 KEY,对付每一种工具范例,革新一次最高记录就会当即输出一次。它能担保输出长度为 Top1 的 KEY,可是 Top2、Top3等 KEY 是无法担保可以扫描出来的。一样平常的处理赏罚要领是多扫描屡次,可能是没落了 Top1 的 KEY 之后再扫描确认尚有没有次大的 KEY。

采样处事器指令

此刻线上有一台 Redis 处事器的 OPS 太高,有许多营业模块都在行使这个 Redis,怎样才气判定出来是哪个营业导致了 OPS 非常的高。这时可以对线上处事器的指令举办采样,调查采样的指令大抵就可以说明出 OPS 占比高的营业点。这时就要行使 monitor 指令,它会将处事器刹时执行的指令所有表现出来。不外行使的时辰要留意纵然行使 ctrl+c 间断,不然你的表现器会噼里啪啦太多的指令刹时让你目眩凌乱。

  1. $ redis-cli --host 192.168.x.x --port 6379 monitor 
  2. 1539853410.458483 [0 10.100.90.62:34365] "GET" "6yax3eb6etq8:{-7}" 
  3. 1539853410.459212 [0 10.100.90.61:56659] "PFADD" "growth:dau:20181018" "2klxkimass8w" 
  4. 1539853410.462938 [0 10.100.90.62:20681] "GET" "6yax3eb6etq8:{-7}" 
  5. 1539853410.467231 [0 10.100.90.61:40277] "PFADD" "growth:dau:20181018" "2kei0to86ps1" 
  6. 1539853410.470319 [0 10.100.90.62:34365] "GET" "6yax3eb6etq8:{-7}" 
  7. 1539853410.473927 [0 10.100.90.61:58128] "GET" "6yax3eb6etq8:{-7}" 
  8. 1539853410.475712 [0 10.100.90.61:40277] "PFADD" "growth:dau:20181018" "2km8sqhlefpc" 
  9. 1539853410.477053 [0 10.100.90.62:61292] "GET" "6yax3eb6etq8:{-7}"  

诊断处事器时延

平常我们诊断两台呆板的时延一样平常是行使 Unix 的 ping 指令。Redis 也提供了时延诊断指令,不外它的道理不太一样,它是诊断当前呆板和 Redis 处事器之间的指令(PING指令)时延,它不只仅是物理收集的时延,还和当前的 Redis 主线程是否繁忙有关。假如你发明 Unix 的 ping 指令时延很小,而 Redis 的时延很大,那声名 Redis 处事器在执行指令时有薄弱卡顿。

  1. $ redis-cli --host 192.168.x.x --port 6379 --latency 
  2. min: 0, max: 5, avg: 0.08 (305 samples) 

时延单元是 ms。redis-cli 还能表现时延的漫衍环境,并且是图形化输出。

  1. $ redis-cli --latency-dist 

Redis呼吁行器材风趣的有数用法
图片

这个图形的寄义作者没有描写,读者们可以实行破解一下。

长途 rdb 备份

执行下面的呼吁就可以将长途的 Redis 实例备份到当地呆板,长途处事器会执行一次bgsave操纵,然后将 rdb 文件传输到客户端。长途 rdb 备份让我们有一种“秀才不出门,全知全国事”的感受。

  1. $ ./redis-cli --host 192.168.x.x --port 6379 --rdb ./user.rdb 
  2. SYNC sent to master, writing 2501265095 bytes to './user.rdb' 
  3. Transfer finished with success. 

模仿从库假如你想调查主从处事器之间都同步了那些数据,可以行使 redis-cli 模仿从库。

  1. $ ./redis-cli --host 192.168.x.x --port 6379 --slave 
  2. SYNC with master, discarding 51778306 bytes of bulk transfer... 
  3. SYNC done. Logging commands from master. 
  4. ... 

从库连上主库的第一件事是全量同步,以是看到上面的指令卡顿这很正常,待初次全量同步完成后,就会输出增量的 aof 日记。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读