【发布时间】:2010-05-17 20:08:24
【问题描述】:
使用较新的 PHP pecl/memcached 扩展。调用 Memcached::setOption() 之类的;
$m = new Memcached();
$m->setOption(Memcached::OPT_DISTRIBUTION, Memcached::DISTRIBUTION_CONSISTENT);
花费在 150 到 500 毫秒之间 - 只是在调用 setOption() 时,因为我们没有使用持久连接,而是在每次请求时都这样做,这很痛苦。
深入研究,将 Memcached::OPT_DISTRIBUTION 设置为 Memcached::DISTRIBUTION_CONSISTENT 最终会在 libmemcached 中调用 update_continuum() ,这似乎相当密集,尽管我们只传递了 15 个 memcached 服务器的列表,所以看到这有点令人惊讶重建连续数据结构需要 150 到 500 毫秒。
是否设置此选项仅适用于持久连接,在建立初始连接时仅调用一次?还是这是 libmemcached 的 bug?
使用更新的 pecl/memcached 扩展 1.0.1 和 libmemcached 0.38
谢谢。
【问题讨论】:
-
最好将此问题直接报告给 Andrei:github.com/andreiz/php-memcached