Я перехожу с memcache на memcached , и я заметил одно из отличий, что флаг сжатия установлен для all set()
звонков, а не в индивидуальном порядке, как с memcache
.
Это настройка для каждого соединения, или я могу включить или выключить ее? Если это последнее, как лучше всего установить флаг сжатия для каждого вызова set()
?
В настоящее время я думаю сделать что-то вроде этого:
<?php
if ($compress) $mc->setOption(Memcached::OPT_COMPRESSION,true);
$return = $mc->set($key,$object,$expiration);
if ($compress) $mc->setOption(Memcached::OPT_COMPRESSION,false);
Это правильный подход?
Я также настраиваю $mc
вот так, если будет какая-то разница:
<?php
$mc = new Memcached("cl");
$mc->setOption(Memcached::OPT_LIBKETAMA_COMPATIBLE,true);
$mc->setOption(Memcached::OPT_BINARY_PROTOCOL,true);
if (count($mc->getServerList()) === 0) {
$mc->addServers(array (
array ($GLOBALS["mc"]["host"],$GLOBALS["mc"]["port"]),
));
}
Спасибо!