标题: 学习memcached的心得 [打印本页] 作者: superadmin 时间: 2009-7-26 22:50 标题: 学习memcached的心得 这一周都在看memcached源代码,看完各个文件再结合一些前人写的心得,昨天再重新过一遍memecached的源代码,总算有了总体上的理解。本来想写篇学习笔记,可是太懒了写了一会又放弃,而且前人写的分析已经很详细了,参考他们的就好了。
新认识了memcache的几个地方,第一就是新增的几个命令:cas append prepend,
cas命令是用来改变一个存在的key的值,但它还带了检查的功能,原文如下:
“cas” is a check and set operation which means “store this data but only if no one else has updated since I last fetched it.”
意思是说如果这个值我最后一次取的没有被修改的话才存储这个值,比如我先获取一个key为”update_time”的值,然后有其他进程修改了这个值,此时我再调用cas设置这个值时则会返回一个EXSISTS的错误表示修改失败。
cas命令的语法是这样:cas key flags exptime cas_unique,
最后一个参数表示这个key的版本,是在调用gets命令获取的时候返回的。
gets uptime
VALUE uptime 0 10 2
2008-03-20
END
最后一个2就是这个key的修改版本,需要用cas更新这个值:
cas uptime 0 0 10 2
2008-03-22