你知道吗,如何在memcached中使用ADD命令?

时间:2013-09-28 17:55:21

标签: php memcached protocols

我在我的项目中使用memcached的许多计数器:

$data = $mc->set('sasa', 100);
$data = $mc->get('sasa');
var_dump($data);
$res =  $mc->add('sasa', 100);
var_dump($res);

结果是

int(100)
bool(false)
int(100)

如果我使用memcached本机协议:

get sasa
VALUE sasa 1 3
100
END
add sasa 0 0 1
1
NOT_STORE
get sasa 
VALUE sasa 1 3
100
END

ADD命令不起作用。 https://github.com/memcached/memcached/blob/master/doc/protocol.txt#L132

你知道吗,如何在memcached中使用ADD命令?

3 个答案:

答案 0 :(得分:1)

您在示例中显示的行为是应该预期的。 ADD命令只会添加一个密钥(如果它尚不存在)。

答案 1 :(得分:0)

可能是内存的使用已达到极限。请检查,如果是,请更改配置文件中的限制值。

答案 2 :(得分:0)

我想你想增加一个柜台。您可以使用incr protocoll级别或Memcache :: increment命令执行此操作。

http://php.net/manual/en/memcache.increment.php