首先,local cache 有许多与上面(query cache)相同的问题。local cache 能够利
用的内存容量受到(单台)服务器空闲内存空间的限制。不过,local第 109 页 共 485 页
cache 有一点比 memcached 和 query cache 都要好,那就是它不但可以存储任
意的数据,而且没有网络存取的延迟。
local cache 的数据查询更快。考虑把 highly common 的数据放在 local
cache 中吧。如果每个页面都需要加载一些数量较少的数据,考虑把它们放在
local
cached 吧。
local cache 缺少集体失效(group
invalidation)的特性。在 memcached 集群中,删除或更新一个 key 会让所有
的观察者觉察到。但是在local cache中, 我们只能通知所有的服务器刷新cache
(很慢,不具扩展性),或者仅仅依赖缓存超时失效机制。
local cache 面临着严重的内存限制,这一点上面已经提到。
memcached 和服务器的 local cache(比如 PHP 的 APC、 mmap 文件等)相比,有什么优缺点?