Viewing file: connect.inc (2.35 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
if (!extension_loaded("memcache")) { die("skip memcache module not loaded"); }
error_reporting(E_ALL);
/* * Please change host & port to match your configuration */
$host = "localhost"; $port = 11211; //$udpPort = 11211;
$host2 = "localhost"; $port2 = 11212; //$udpPort2 = 11212;
//ini_set('memcache.hash_strategy', 'standard'); //ini_set('memcache.hash_function', 'fnv'); ini_set('memcache.protocol', getenv('MEMCACHE_PROTOCOL') ?: 'ascii');
if (ini_get('memcache.protocol') == 'binary') { $udpPort = 0; $udpPort2 = 0; }
/* Start a server listening to a unix domain socket * * mkdir /var/run/memcached * chown memcached:memcached /var/run/memcached * memcached -d -u memcached -s /var/run/memcached/memcached.sock * chmod a+w /var/run/memcached/memcached.sock */ $domainsocket = 'unix:///var/run/memcached/memcached.sock';
// A server which is guaranteed to fail immediatly $nonExistingHost = "localhost"; $nonExistingPort = 11213;
// A server which times out when attempting to connect to $unreachableHost = '10.254.254.254'; $unreachablePort = 11211;
$udpPacketSize = 1400;
$balanceKeys = array( 'consistent' => array( 'crc32' => array('key1_abc', 'key2_abcde'), 'fnv' => array('key1_a', 'key2_2534534'), ), 'standard' => array( 'crc32' => array('load_test_key1', 'load_test_key2'), 'fnv' => array('key1_ab', 'key2_a'), ), );
$strat = strtolower(ini_get('memcache.hash_strategy')); $func = strtolower(ini_get('memcache.hash_function')); list ($balanceKey1, $balanceKey2) = $balanceKeys[$strat][$func];
if (!isset($udpPort)) $udpPort = 0; if (!isset($udpPort2)) $udpPort2 = 0;
$memcache = memcache_connect($host, $port);
function test_connect1() { global $host, $port, $udpPort; $memcache = new MemcachePool(); $memcache->connect($host, $port, isset($udpPort) ? $udpPort : 0); return $memcache; }
function test_connect2() { global $host2, $port2, $udpPort2; $memcache = new MemcachePool(); $memcache->connect($host2, $port2, isset($udpPort2) ? $udpPort2 : 0); return $memcache; }
function test_connect_pool() { global $host, $port, $udpPort, $host2, $port2, $udpPort2; $memcache = new MemcachePool(); $memcache->addServer($host, $port, isset($udpPort) ? $udpPort : 0); $memcache->addServer($host2, $port2, isset($udpPort2) ? $udpPort2 : 0); return $memcache; }
if (!$memcache) { die('skip Connection to memcached failed'); }
|