PHP session and memcacheD

Viewed 11993

Everybody knows there are two extensions for memcache on PHP:

  • memcache
  • memcached

You can use memcache the PHP extension as a session_handler for PHP like so :

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

Or you can use memcached like so:

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

But how to set other parameters to memcached such as:

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

In PHP I will do like so:

$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);

But so far I have not found any documentation or examples of how to set those variables when they are use by the session_handler.

2 Answers
Related