Hello,
I am wondering if is safe to use memcache extension with multiple
memcache servers used from multiple http/php servers ?
I am asking this because I dont know how memcache extension is handling
internally selecting the server where to get/set values. Because using
multiple http servers I am not sure if for the same key all the http
servers will query the same memcache server ?
A sample from http/php server 1:
$memcache = new Memcache;
$memcache->addServer('memcache_host1', 11211);
$memcache->addServer('memcache_host2', 11211);
$memcache_obj->set('var_key', 'value A');
echo $memcache_obj->get('var_key');
A sample from http/php server 2:
$memcache = new Memcache;
$memcache->addServer('memcache_host1', 11211);
$memcache->addServer('memcache_host2', 11211);
$memcache_obj->set('var_key', 'value B');
echo $memcache_obj->get('var_key');
We can be sure both http/php servers 1 and 2 will set/get the var_key to
the same memcache server ? Because otherwise it could be like this:
1. http server 1 is writing var_key to memcache_host1
2. http server 2 has an update and is writing updated var_key to
memcache_host2
3. at a later time http server 1 is trying to get the var_key and is
getting this from memcache_host1 => getting an outdated value ISSUE!
So how safe is to use memcache extension with multiple memcache servers
from multiple http/php servers ?
Cristian