zoukankan      html  css  js  c++  java
  • Redis常用运维命令

    1.启动命令

    按照我其他博客的按照方法,启动命令为/etc/init.d/redis_6379 start

    2.查看内存统计信息

    [root@bogon ~]# redis-cli 
    127.0.0.1:6379> info memory
    # Memory
    used_memory:821512  #由 Redis 分配器分配的内存总量,包含了redis进程内部的开销和数据占用的内存,以字节(byte)为单位
    used_memory_human:802.26K  #以更直观的单位展示分配的内存总量。以下含有human的都是以更加直观的单位显示而已
    used_memory_rss:7704576  #向操作系统申请的内存大小。与 top 、 ps等命令的输出一致
    used_memory_rss_human:7.35M
    used_memory_peak:821512  #redis的内存消耗峰值(以字节为单位)
    used_memory_peak_human:802.26K
    total_system_memory:1023934464  #整个系统内存
    total_system_memory_human:976.50M
    used_memory_lua:37888  #Lua脚本存储占用的内存
    used_memory_lua_human:37.00K
    maxmemory:0  #Redis实例的最大内存配置
    maxmemory_human:0B
    maxmemory_policy:noeviction  #当达到maxmemory时的淘汰策略
    mem_fragmentation_ratio:9.38  #碎片率,used_memory_rss/ used_memory
    mem_allocator:jemalloc-4.0.3  #内存分配器
    127.0.0.1:6379>

    3.查询慢命令

    127.0.0.1:6379> slowlog get  #后面加个10,可以查询最慢的10条命令
    1) 1) (integer) 0
    2) (integer) 1571389968
    3) (integer) 24123
    4) 1) "info"
    2) "memory"
    127.0.0.1:6379>

    4.碎片率处理

    内存碎片率稍大于1是合理的,这个值表示内存碎片率比较低,也说明redis没有发生内存交换。但如果内存碎片率超过1.5,那就说明Redis消耗了实际需要物理内存的150%,其中50%是内存碎片率,这些碎片所占用的内存代表的含义是Redis没有把内存归还给操作系统。若是内存碎片率低于1的话,说明Redis内存分配超出了物理内存,操作系统正在进行内存交换。

    解决redis内存碎片问题:

    1、如果内存碎片率超过1.5,重启Redis服务器可以让额外产生的内存碎片失效并重新作为新内存来使用,使操作系统恢复高效的内存管理。在重启服务之前,可以手动save一次redis数据,这样能保证在执行Redis关闭时不丢失任何数据。
    2、如果内存碎片率低于1,Redis实例可能会把部分数据交换到硬盘上。内存交换会严重影响Redis的性能,所以应该增加可用物理内存或减少实Redis内存占用。
    3、修改redis内存分配器。Redis支持glibc、jemalloc、tcmalloc几种不同的内存分配器,每个分配器在内存分配和碎片上都有不同的实现。通常使用redis默认的jemalloc内存分配器即可。

    5.查看当前库中的key数量

    127.0.0.1:6379> dbsize
    (integer) 1

    6.Redis应用场景

    1.缓存 2.计数器 3.排行榜 4.定位功能 5.简单的信息系统 6.交友

    7.登陆命令

    redis-cli -p 5566 -a password

    8.持久化

    save:将数据同步保存到磁盘
    
    bgsave:将数据异步保存到磁盘
    
    lastsave:返回上次成功将数据保存到磁盘的Unix时戳
    
    shundown:将数据同步保存到磁盘,然后关闭服务

    9.测试Redis性能

    redis-benchmark-h localhost -p 6379 -c 100 -n 100000  #100个并发连接,100000个请求,检测host为localhost 端口为6379的redis服务器性能

    10.查询系统信息

    redis-cli info

    11.查询慢查询条数

    slowlog len

    12.清空慢查询

    slowlog reset
  • 相关阅读:
    棋盘格渲染
    openvino踩坑之Data type is unsupported
    [video super resolution] ESPCN论文笔记
    tensorflow fp16训练
    openvino安装踩坑记
    python numpy中astype使用不当导致图像出现artifact
    Python~字典
    Django~待解决的问题
    正则表达式应用
    GitLab使用
  • 原文地址:https://www.cnblogs.com/biaopei/p/11699877.html
Copyright © 2011-2022 走看看