- redis 使用单进程单线程,减少内存拷贝,不存在上下文切换,提高性能。
- 直接内存操作。
- 过期策略
redis也是惰性删除,即要用到数据时,先检查key是否过期,过期则删除,然后返回错误。单纯的靠惰性删除,可能会造成内存浪费,redis里面有个定时执行的函数,叫servercron - 数据结构
双端链表结构 - 事件模型
linux内核2.6以后引人epoll,使用epoll来做循环事件
Linux下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率另一点原因就是获取事件的时候,它无须遍历整个被侦听的描述符集,只要遍历那些被内核IO事件异步唤醒而加入Ready队列的 描述符集合就行了 。 - 磁盘IO
fork子进程异步IO处理,不影响主进程服务。 - 内存管理
redis没有实现自己的内存池,这使得管理内存更简单,使用时直接分配,内存管理交给内核完成,本身只管理获取和释放。
redis整理
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 分布式缓存技术PK:选择Redis还是Memcached? 经平台同意授权转载 作者:田京昆(腾讯后台研发工程师)...
- 转载地址:http://gnucto.blog.51cto.com/3391516/998509 Redis与Me...