码迷,mamicode.com
首页 > 系统相关 > 详细

memcached和redis缓存

时间:2016-04-05 14:11:31      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:memcached redis

memcached  :LRU

支持高并发的原因:多路复用IO(消息通知模式)、多线程模式(CPU的核数)

分布式方案:

# 普通hash分布(取模)

# 一致性hash分布(0-232环)


redis:

LRU: 从数据库中删除一个最近最少访问的key

随机淘汰算法:从数据库中随机删除一个key

TTL淘汰算法:从数据库中删除一个最快过期的key


对象计数器:引用到计数器加1,引用失效-1,为0删除,可以避免并发时问题。


支持的类型:

String:

List:双向链表(实现消息队列,头部取出,尾部放入)

Set:无序集合(投票,无重复)

Sorted Set:有序集合(顶贴次数排序)

Hash:哈希表,类似于数据库表(存用户信息)


事务处理


持久化:

#内存快照:存入二进制文件

#日志追加


主从同步:master上禁止持久化,slave可以

步骤:slave主动连接master;slave发SYCN命令到master请求同步;master备份到rdb;master把rdb文件传给slave;slave清空数据库,把rdb导入。


虚拟内存:物理内存不足时。


清除数据:

#定时清除

#用户获取数据时

memcached和redis缓存

标签:memcached redis

原文地址:http://apache323.blog.51cto.com/6134209/1760401

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!