Web集群缓存一致性的思考

共享cache+数据库实现缓存一致性:

1.1 memcache + mongo+定时器

1.1.1 memcache

优点:web集群共享数据

缺点:数据生命周期的不可预估性

1.1.2 mongo

优点:持久化数据

缺点:读的性能太与cache相差甚远(数据量高于数据库大小时)

1.1.3 定时器

优点:可以确保memcache数据的生命周期

缺点:浪费web服务器和数据库资源

1.2 实现要求: web集群时钟必须同步

1.3 cache的数据结构

update_lock 更新锁,确保上一次更新操作未完成(可能数据数据查询延时)前不会执行下一次更新

 问题:锁没被释放可能导致更新操作永远不能被执行,直到锁释放;

解决: 去掉update_lock,为数据查询设置超时

timestmp 时间戳,确保定时器周期内只被更新最多一次

key-value,... 数据

posted on 2013-08-24 01:10  大松  阅读(597)  评论(0编辑  收藏  举报