This is what the previous comment (fake set multi):
https://github.com/php-memcached-dev/php-memcached/blob/master/php_memcached.c#L1219
(PECL memcached >= 0.1.0)
Memcached::setMulti — Store multiple items
Memcached::setMulti() is similar to
Memcached::set(), but instead of a single key/value
item, it works on multiple items specified in
items
. The expiration
time
applies to all the items at once.
items
Ein Array von Schlüssel-/Wert-Paaren, die auf dem Server gespeichert werden sollen.
expiration
Die Verfallszeit, Vorgabewert ist 0. Siehe Verfallszeiten für weiterführende Informationen.
Gibt bei Erfolg true
zurück. Bei einem Fehler wird false
zurückgegeben.
Benutzen Sie wenn nötig
Memcached::getResultCode().
Beispiel #1 Memcached::setMulti() example
<?php
$m = new Memcached();
$m->addServer('localhost', 11211);
$items = array(
'key1' => 'value1',
'key2' => 'value2',
'key3' => 'value3'
);
$m->setMulti($items, time() + 300);
?>
This is what the previous comment (fake set multi):
https://github.com/php-memcached-dev/php-memcached/blob/master/php_memcached.c#L1219
The previous comment is from April 2013, it has a link pointing on current master, so things are changed since 2013 in the source code.
Maybe the right link is
https://github.com/php-memcached-dev/php-memcached/blob/80cb21467a1db6b7b18725df586f11801c823695/php_memcached.c#L1219
By the way, can someone skilled in C confirm the "fake setMulti" problem?
Dont expect setmulti is faster then multiple SETs!
It doesn't use the setmulti lib function, it iterats over every key and send him alone.
I can't find any php implementation with setmulti support (needs support for memcached's binary protocol, remember php's "memcache"-extension only supports text-protocol).
Thats bad, not enought throughput to membase.
So i have to use redis instead, coz of its support for get/set multi.