redis
唐荣跃
谁的青春没遗憾
展开
-
redis内存优化必知必会
redis为了平衡性能与空间开销,每种数据类型至少提供了两种编码实现,有节省内存空间的实现,也有提高性能的实现。满足一定条件时类型的编码实现会自动转换,不过redis并不支持编码实现的回退,因为频繁的增删操作,数据项压缩编码实现转换非常消耗CPU。redis的内存优化一般从以下几个方面着手过期键删除#查看当前对象使用的数据类型type#查看类型的内部编码encoding高并发写入场景中,在条件允许的情况下字符串长度控制在39字节以内,可减少创建redisObject内存分配次数,从而提高性能原创 2021-01-31 23:12:39 · 179 阅读 · 0 评论 -
redis的内存回收策略
redis的内存回收主要做了两件事情,一件是删除到达过期时间的键对象,另一件是内存到达配置的上限时触发的内存溢出控制。过期键删除如果redis严格按照过期时间来删除过期键会导致消耗大量的CPU,这对于单线程的redis来说成本过高,因此redis使用惰性删除和定时删除机制来回收过期键的内存惰性删除客户端查询带有过期属性的key时,先判断如果超过过期时间就执行删除并返回空,这样可以节省CPU开销,但是单独使用这种过期键删除方式存在内存泄露问题。如果过期键一直没被访问,那内存将无法得到释放。因此redi原创 2021-01-31 19:56:11 · 184 阅读 · 0 评论 -
redis哈希类型的内存优化技巧
—8.3原创 2021-01-30 21:01:10 · 218 阅读 · 0 评论 -
redis数据结构之字符串
。。。。原创 2021-01-30 18:52:47 · 67 阅读 · 0 评论 -
redis数据结构之有序集合
。。。原创 2021-01-30 18:50:58 · 252 阅读 · 0 评论 -
redis数据结构之集合
。。。原创 2021-01-30 18:49:51 · 206 阅读 · 0 评论 -
redis数据结构之列表
。。。。原创 2021-01-30 18:48:58 · 49 阅读 · 0 评论 -
redis数据结构之哈希
。。。原创 2021-01-30 18:48:07 · 59 阅读 · 0 评论 -
redis的api
redis提供了Stringj、hash、list、set、zset五中数据结构,由于mysql的单线程模型使用合适的数据结构和api可以避免猜到性能上的坑。ziplist可以作为多种外部数据结构的内部实现,ziplist比较节省内存,但数据量越多性能越差。在数据量比较多的情况下redis会根据配置选项将列表类型的内部实现转换为linkedlist。redis常用命令设置值set命令的选项:ex seconds:为键设置秒级过期时间px milliseconds:为键设置毫秒级过期时间n原创 2021-01-30 18:45:37 · 77 阅读 · 0 评论 -
性能测试之redis调优
待续。。。。。。原创 2020-12-11 16:32:03 · 106 阅读 · 0 评论