自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Redis-Cli 的功能太強(qiáng)大了,你真的了解嗎?

存儲 存儲軟件 Redis
玩過redis的朋友應(yīng)該都知道有一個(gè)叫做 redis-cli 的客戶端小工具,在實(shí)際開發(fā)中相信很多人只知道用 redis-cli 進(jìn)行 REPL 式的交互,其實(shí)這只是一個(gè)非常小的子集,比如利用它可以在test和develop環(huán)境下進(jìn)行高效的模擬測試,接下來我逐一給大家演示下。

[[347938]]

 玩過redis的朋友應(yīng)該都知道有一個(gè)叫做 redis-cli 的客戶端小工具,在實(shí)際開發(fā)中相信很多人只知道用 redis-cli 進(jìn)行 REPL 式的交互,其實(shí)這只是一個(gè)非常小的子集,比如利用它可以在test和develop環(huán)境下進(jìn)行高效的模擬測試,接下來我逐一給大家演示下。

一:非REPL (Read Eval Print Loop) 模式

通常我們都是使用REPL模式,就是連接端口之后,發(fā)一條 request 再等待 response 這樣一個(gè)loop的形式,如下所示:

  1. [root@localhost Desktop]# redis-cli -h 192.168.1.216 
  2. 192.168.1.216:6379> set username jack 
  3. OK 
  4. 192.168.1.216:6379> set password 12345 
  5. OK 
  6. 192.168.1.216:6379> 

其實(shí)我還可以直接在命令行中使用 redis-cli 再配合各種附加參數(shù),效果和上面是一模一樣的,比如下面這樣:

  1. [root@localhost Desktop]# redis-cli -h 192.168.1.216 set username jack 
  2. OK 
  3. [root@localhost Desktop]# redis-cli -h 192.168.1.216 set password 12345 
  4. OK 
  5. [root@localhost Desktop]# 

看到?jīng)]有,是不是有點(diǎn)意思哈~~~

二:從本地文件中執(zhí)行命令導(dǎo)入

這功能還是挺酷的,你可以把本地文件中的一組redis命令直接導(dǎo)入到 redis-cli 中執(zhí)行,免去了一行一行鍵入之苦,對不對,工作量可是大大的減輕了哈,參照下面流程。

1. 新建目錄

在 /usr/ 下面新建一個(gè)txt文件,執(zhí)行兩個(gè)set操作。

 

然后用 < 命令導(dǎo)入就可以了,這里216的ip是本地局域網(wǎng)內(nèi)的一臺虛擬機(jī),是不是有點(diǎn)像pipeline管道操作,🐂👃吧~~~ 如下所示:

  1. [root@localhost Desktop]# redis-cli -h 192.168.1.216 < /usr/1.txt 
  2. OK 
  3. OK 
  4. [root@localhost Desktop]# 

三:對指定的redis命令重復(fù)調(diào)用

乍一聽貌似沒啥業(yè)務(wù)場景,仔細(xì)想想還是有的,比如說不斷的調(diào)用 info 命令,這就是一個(gè)好的監(jiān)控,對不對?命令格式如下:

  1. redis-cli -r <countand -i <delay> command 

其中 -r 是 repeat 的次數(shù),-i 是 delay 的 sencond 的秒數(shù),接下來我演示一下,調(diào)用info命令10次,每次延遲1s,如下所示:

  1. [root@localhost Desktop]# redis-cli -h 192.168.1.216 -r 10 -i 1 INFO 
  2. # Server 
  3. redis_version:3.2.4 
  4. redis_git_sha1:00000000 
  5. redis_git_dirty:0 
  6. redis_build_id:fc9ad9a14d3a0fb5 
  7. redis_mode:standalone 
  8. os:Linux 3.10.0-327.el7.x86_64 x86_64 
  9. arch_bits:64 
  10. multiplexing_api:epoll 
  11. gcc_version:4.8.5 
  12. process_id:6171 
  13. run_id:8d1d5cffbf81e31c6c6e0bd144186e9df9fea482 
  14. tcp_port:6379 
  15. uptime_in_seconds:3536932 
  16. uptime_in_days:40 
  17. hz:10 
  18. lru_clock:5049094 
  19. executable:/etc/redis/redis-server 
  20. config_file:/etc/redis/6379.conf 
  21.  
  22. # Clients 
  23. connected_clients:7 
  24. client_longest_output_list:0 
  25. client_biggest_input_buf:0 
  26. blocked_clients:0 
  27.  
  28. # Memory 
  29. used_memory:1295512 
  30. used_memory_human:1.24M 
  31. used_memory_rss:10395648 
  32. used_memory_rss_human:9.91M 
  33. used_memory_peak:35199336 
  34. used_memory_peak_human:33.57M 
  35. total_system_memory:2099109888 
  36. total_system_memory_human:1.95G 
  37. used_memory_lua:37888 
  38. used_memory_lua_human:37.00K 
  39. maxmemory:0 
  40. maxmemory_human:0B 
  41. maxmemory_policy:noeviction 
  42. mem_fragmentation_ratio:8.02 
  43. mem_allocator:jemalloc-4.0.3 
  44.  
  45. # Persistence 
  46. loading:0 
  47. rdb_changes_since_last_save:0 
  48. rdb_bgsave_in_progress:0 
  49. rdb_last_save_time:1481443658 
  50. rdb_last_bgsave_status:ok 
  51. rdb_last_bgsave_time_sec:0 
  52. rdb_current_bgsave_time_sec:-1 
  53. aof_enabled:0 
  54. aof_rewrite_in_progress:0 
  55. aof_rewrite_scheduled:0 
  56. aof_last_rewrite_time_sec:-1 
  57. aof_current_rewrite_time_sec:-1 
  58. aof_last_bgrewrite_status:ok 
  59. aof_last_write_status:ok 
  60. ... 

這么多輸出,有點(diǎn)眼花繚亂,大多時(shí)候我只關(guān)注 used_memory_human 字段,看看當(dāng)前 redis 占用了多少內(nèi)存,這里就可以用grep過濾一下:

  1. [root@localhost Desktop]# redis-cli -h 192.168.1.216 -r 10 -i 1 INFO | grep used_memory_human 
  2. used_memory_human:1.24M 
  3. used_memory_human:1.24M 
  4. used_memory_human:1.24M 
  5. used_memory_human:1.24M 
  6. used_memory_human:1.24M 
  7. used_memory_human:1.24M 
  8. used_memory_human:1.24M 
  9. used_memory_human:1.24M 
  10. used_memory_human:1.24M 
  11. used_memory_human:1.24M 
  12. [root@localhost Desktop]# 

可以清楚的看到,當(dāng)前 memory_human 占用 1.24M,一個(gè)麻雀式的監(jiān)控就來了!

四:--stat完整版監(jiān)控

如果只有一個(gè)內(nèi)存占用指標(biāo)肯定不能滿足大家的實(shí)際需求,比如你就看不到當(dāng)前的redis中有多少的keys,有多少的clients,有多少被blocked,有多少requests等等信息,如果這些都有了,是不是有點(diǎn)像mongodb中的mongostats呢?哈哈,迫不及待的給大家來演示一下吧,非常的簡單。。。

  1. [root@localhost Desktop]# redis-cli -h 192.168.1.216 --stat 
  2. ------- data ------ --------------------- load -------------------- - child - 
  3. keys       mem      clients blocked requests            connections           
  4. 27         1.24M    7       0       1198768 (+0)        2206         
  5. 27         1.24M    7       0       1198769 (+1)        2206         
  6. 27         1.24M    7       0       1198770 (+1)        2206         
  7. 27         1.24M    7       0       1198771 (+1)        2206         
  8. 27         1.24M    7       0       1198772 (+1)        2206         
  9. 27         1.24M    7       0       1198773 (+1)        2206         
  10. 27         1.24M    7       0       1198774 (+1)        2206         
  11. 27         1.24M    7       0       1198775 (+1)        2206         
  12. 27         1.24M    7       0       1198776 (+1)        2206         
  13. 27         1.24M    7       0       1198777 (+1)        2206         
  14. 27         1.24M    7       0       1198778 (+1)        2206         
  15. 27         1.24M    7       0       1198779 (+1)        2206         
  16. 27         1.24M    7       0       1198780 (+1)        2206         
  17. 27         1.27M    7       0       1198782 (+2)        2206         
  18. 27         1.24M    7       0       1198783 (+1)        2206         
  19. 27         1.24M    7       0       1198784 (+1)        2206         
  20. 27         1.24M    7       0       1198785 (+1)        2206 

本文轉(zhuǎn)載自微信公眾號「一線碼農(nóng)聊技術(shù)」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系一線碼農(nóng)聊技術(shù)公眾號。

 

責(zé)任編輯:武曉燕 來源: 一線碼農(nóng)聊技術(shù)
相關(guān)推薦

2014-04-17 16:42:03

DevOps

2022-07-26 00:00:22

HTAP系統(tǒng)數(shù)據(jù)庫

2018-11-22 21:45:59

物聯(lián)網(wǎng)卡運(yùn)營商流量卡

2025-01-03 08:09:15

2021-01-15 07:44:21

SQL注入攻擊黑客

2021-11-09 09:48:13

Logging python模塊

2019-09-16 08:40:42

2014-11-28 10:31:07

Hybrid APP

2020-02-27 10:49:26

HTTPS網(wǎng)絡(luò)協(xié)議TCP

2023-03-16 10:49:55

2023-11-01 13:48:00

反射java

2021-11-26 08:07:16

MySQL SQL 語句數(shù)據(jù)庫

2018-01-06 10:38:51

Ping抓包 ICMP協(xié)議

2017-10-18 22:01:12

2023-10-24 08:53:24

FutureTas并發(fā)編程

2012-05-31 09:56:54

云安全

2015-07-31 10:35:18

實(shí)時(shí)計(jì)算

2022-12-12 08:46:11

2019-11-06 09:52:01

JavaScript單線程非阻塞

2022-03-14 07:53:27

ELTETL大數(shù)據(jù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號