Redis优化
来源:互联网 发布:运动健康软件下载 编辑:程序博客网 时间:2024/06/05 08:43
1、慢命令
举例:订单列表曾经使用keys命令,用来查询符合条件的key。虽然很好用,但是确实非常耗时。
如何查询耗时大的命令?
slowlog
通过slowlog命令可以查出哪些命令执行慢,
可以通过使用Redis-cli工具,输入slowlog get命令查看。slowlog get 10 表示查看10个最慢的命令。
1=日志唯一标示
2=记录的时间点
3=执行时间,以毫秒为单位
4=执行的命令,以数组的形式排列。完整命令是config get *
redis默认会记录10ms的命令,如何修改阀值?
config set slowlog-log-slower-than 5000
2、命令多,存在排队等待的命令
命令队列里的命令过多时,后面的命令会处于排队等待的状态。
可以使用多参数命令,一个命令操作多个参数。
例如:set 命令是设置一个参数。mset可以设置多个key的值。
可以使用管道命令pipeline,把几个命令合并起来执行。
尽量减少大集合的复杂操作。集合越大,获取数据的时间就会增大。
3、内存
可以通过info memory 获取redis的内存使用等相关信息。
used_memory redis的内存使用量(byte) :实际缓存占用的内存和Redis自身运行所占用的内存
used_memory_human redis的内存使用量(m) 注:其实只是单位不一样。
used_memory_rss:从操作系统上显示已经分配的内存总量。
mem_fragmentation_ratio: 内存碎片率。
used_memory_lua: Lua脚本引擎所使用的内存大小。
mem_allocator: 在编译时指定的Redis使用的内存分配器,可以是libc、jemalloc、tcmalloc。
如果redis内存使用量超过最大内存(userd_memory > 可用最大内存),旧的,不使用的数据会被
写入硬盘,用来腾地。而硬盘的读写要比内存慢很多。
如果能减少内存使用?
可以使用Hash数据结构。因为Redis在储存小于100个字段的Hash结构上,其存储效率是非常高的。
设置key的过期时间。如果有些key并不是需要长期存在,可以设置过期时间,过期后,会自动被删除。
- Redis优化
- Redis优化
- Redis优化
- Redis通信协议优化
- redis dump数据优化
- redis的一些优化
- Redis 内存优化
- redis 简单优化
- redis 参数优化
- redis内存优化
- Redis Cluster架构优化
- Redis性能优化
- Redis优化经验
- redis内存优化
- redis数据优化
- redis 性能优化
- redis性能优化
- Redis内存优化手段
- NKOI 3539 移棋子游戏[6月月赛题A]
- SVN更新失败,提示locked的解决方案
- Android 串口通信
- 统计数字
- wifi协议-802
- Redis优化
- 复数类的运算符重载
- Swift基础一
- android Rect四个参数介绍
- TextKit实现图文混排
- cisco 5510 ASDM 修改登录端口
- GoogleMaps 踏坑之旅(一)
- 2016 ISCC CTF 比赛 WEB类第一题
- extern的使用