Сеанс PHP и memcacheD

Все знают, что есть два расширения для memcache на PHP:

  • memcache
  • memcached

Вы можете использовать memcache, расширение PHP как session_handler для PHP, например:

session.save_handler = memcache
session.save_path = "tcp://serv01:11211,tcp://serv02:11211,tcp://serv03:11211"

Или вы можете использовать memcached вот так:

session.save_handler = memcached
session.save_path = "serv01:11211,serv02:11211,serv03:11211"

Но как установить другие параметры для memcached, например:

  • Memcached :: OPT_DISTRIBUTION
  • Memcached :: OPT_RETRY_TIMEOUT
  • Memcached :: OPT_CONNECT_TIMEOUT

В PHP я сделаю так:

$cache = new Memcached();
$cache->addServer('serv01', 11211);
$cache->addServer('serv02', 11211);
$cache->addServer('serv03', 11211);
$cache->setOption(Memcached::OPT_HASH, Memcached::HASH_MD5);
$cache->setOption(Memcached::OPT_DISTRIBUTION, Memcached::DISTRIBUTION_CONSISTENT);
$cache->setOption(Memcached::OPT_CONNECT_TIMEOUT, 150);
$cache->setOption(Memcached::OPT_RETRY_TIMEOUT, 0);

Но пока я не нашел никакой документации или примеров того, как устанавливать эти переменные, когда они используются session_handler.

16
задан Ian Lewis 18 March 2013 в 14:48
поделиться