Redis 数据类型分析 字符串 哈希 列表 集合 有序集合 优缺点 分析 注意事项 存储结构...

Redis 基础知识问答 Redis 数据类型介绍

提高Redis使用性能秘诀

  1. KEY尽量少的原则,能放在1个KEY的就放入1个KEY,KEY开销很大
  2. 尽量减少与Redis发生的交互次数,能批量的就批量,能事务、管道的就事务、管道
  3. 从业务架构分析确定使用哪种数据类型,从 全局 出发,如果类型选错了再改变就很不容易
  4. 使用每一个Redis命令注意是 O(1) ,还是 O(N) ,切记滥用,认准每个命令的特性再使用也不迟
  5. 使用PHP Redis 的C语言扩展,性能远远高于PHP脚本编写的文件
  6. 时刻清醒你往Redis里存储了什么,频繁交互、相对静态的小数据存储至Redis是理想的,300万用户所有不常用的信息都无脑塞进去不但浪费内存(有可能服务器128G内存不够用必须要老大花钱买内存),还影响Redis性能,增大管理成本

Redis各大类型特性注意事项一览表

字符串(Strings) 哈希(Hashes) 列表(Lists) 集合(Sets) 有序集合(Sorted sets)
512MB/Value 4294967295/Hash 4294967295/List 4294967295/Set 4294967295/Stored
Key【唯一】
Value【重复】
Key【唯一】
Hash key【唯一】
Value【重复】
Key【唯一】
Index【唯一】
Value【重复】
Key【唯一】
Value【唯一】
Key【唯一】
Score【重复】
Value【唯一】
无序 key无序
Hash key按先后进入顺序有序
key无序
Index按先后进入顺序有序
key无序
Value无序
key无序
按Score值排序有序
简单存储,持久化的memcached,计数器、灵活操作字符串 Json KV结构,单表存储,缓存,对象存储 队列系统,时间轴系统设计,显示极端数据,先进先出,后进后出 以key为班级,Value老师,可以求出不同班级中老师的交集、并集 以key为班级,Score为分数,Value为学生的考试成绩排行榜报表等分组统计功能
最原始的缓存系统,性能高,任意1个的性能 O(1) 类似关系型数据库操作,性能高,任意1个的性能 O(1) 操作首尾数据,统计长度很快 O(1) ,中间数据操作性能不高 O(N) 类似数组下标访问元素,添加,删除,查找任意1个的复杂度都是 O(1) Sets 升级版,有分组+统计等功能,添加,删除,查找任意1个的复杂度都是 O(log(1))
简单的数据交互 简单的数据交互 简单的数据交互 支持服务端数据运算 支持服务端数据运算

注意

phpRedisAdmin 里面显示的顺序有BUG,显示结果排序与redis-cli命令里面的排序顺序并不完全一致,生产环境应以redis-cli为准(Redis version: 3.0.7

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HookPHP

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值