redis
文章平均质量分 94
wanting1024
尝试把这几年的积累形成闭环
展开
-
redis(四):redis为什么这么快
先上结论:redis是纯内存操作。redis整个就是一个全局hash表,时间复杂度为O(1),而且为了防止hash冲突导致链表过长,redis会进行rehash操作,扩充hash桶的数量,减少hash冲突。并且采用的是渐进式rehash,防止一次性重新映射导致线程阻塞。IO多路复用单线程模型,保证了每个操作的原子性,减少了线程的上下文切换的开销和竞争。针对不同数据结构进行了优化根据实际存储的数据类型选择不同编码1、纯内存操作redis将数据存储在内存中,读写操作不会因为磁盘的IO速度.转载 2021-05-06 15:42:21 · 162 阅读 · 0 评论 -
redis(一):linux中redis安装
1.获取redis资源wget http://download.redis.io/releases/redis-5.0.0.tar.gz如果没有安装wgetyum -y install wget2.解压获取到的资源tar xzvf redis-5.0.0.tar.gz3.安装cd redis-5.0.0make如果提示:提示错误 make: cc: Com...原创 2019-08-22 23:43:23 · 93 阅读 · 0 评论 -
redis(二):redis的持久化方式
redis持久化方式分为:RDB持久化和AOF持久化一、RDB持久化RBD持久化是把当前进程的数据已快照的形式保存到硬盘的过程。触发分为手动触发和自动触发。手动触发命令:save:阻塞式,内存较大的实例在执行过程中会造成长时间的阻塞,影响主进程上的正常服务请求。 bgsave:fork子进程,RDB持久化的过程在子进程中进行,完成后自动结束进程。阻塞发生在fork阶段,时间...原创 2019-09-07 23:05:37 · 156 阅读 · 0 评论 -
redis(三):redis缓存更新策略
redis缓存更新分为:内存溢出淘汰策略、过期删除策略、应用方更新一、内存溢出淘汰策略当redis所用内存达到maxmemory时(use_memory>maxmemory),会触发相应的溢出控制策略,具体策略可配根据LRU算法删除设置了超时属性(expire)的键,直到腾出足够空间为止。如果没有可删除的键对象,回退到noeviction策略。maxmemory-policy ...原创 2019-09-07 23:26:28 · 452 阅读 · 0 评论