84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
不删除值意味着值仍然占据的内存空间,而没有了键,这些值的存在也没办法访问啊,这样做的意义是什么?
认证0级讲师
你可以看一下这篇文章:
Lazy Expiration
memcached内部不会监视记录是否过期,而是在get时查看记录的时间戳,检查记录是否过期。 这种技术被称为lazy(惰性)expiration。因此,memcached不会在过期监视上耗费CPU时间。
flush_all只做一件事:把所有键值标记为已过期,但并不回收内存。因为当时没有回收内存这个必要。只有当下一次用户访问同一键值时,memcached才检查键值,这时发现此键值已过期,于是回收对应此键值的内存。这样做的目的是为了最大限度的节省CPU时间。
你可以看一下这篇文章:
Lazy Expiration
memcached内部不会监视记录是否过期,而是在get时查看记录的时间戳,检查记录是否过期。 这种技术被称为lazy(惰性)expiration。因此,memcached不会在过期监视上耗费CPU时间。
flush_all只做一件事:把所有键值标记为已过期,但并不回收内存。因为当时没有回收内存这个必要。只有当下一次用户访问同一键值时,memcached才检查键值,这时发现此键值已过期,于是回收对应此键值的内存。这样做的目的是为了最大限度的节省CPU时间。