【发布时间】:2013-09-27 22:57:27
【问题描述】:
memcached 中的高未命中数会导致任何问题吗? Memcached 没有检查密钥是否存在的功能,我需要将密钥设置为 300 秒的到期时间。此密钥在过期之前不会更新。我的代码如下所示:
$data=$cache->get($cache_key);
if(!$data) {
//load from db here
$cache->set($cache_key, $data);
}
它运行良好,但我的流量负载非常高(高峰期在线超过 100k)。在 db 中是数据更频繁地更改,但在 web 上是 5 分钟延迟,这就是为什么如果 db 更新并在过期时间后设置新的,我不更新缓存。
但我的问题是,我可以担心未命中、未命中/率吗?我在 memcached 中存储了大约 20k 个密钥,因此每 5 分钟我可以丢失 20k 个密钥。对于我的数据,这没问题,但是对于系统/服务器呢?
【问题讨论】: