Какое ограничение на количество ключей, которые я могу получить в memcache? - PullRequest
4 голосов
/ 17 марта 2011

Так что в PHP мы можем сделать $memcache->get(array('a','b','c'));
Интересно, каков предел ключей до того, как что-то сломается.Могу ли я передать 1000 ключей?10000 ключей?

Я пытался найти ответ, но нигде не могу найти.

Есть ли кто-нибудь, кто имеет опыт передачи большого количества ключей для множественного доступа к memcache?

Ответы [ 2 ]

3 голосов
/ 17 марта 2011

Расширение Memcached поддерживает как минимум 100 000 ключей в getMulti, учитывая этот тест:

php > $data = array_map(function($v){ return 'x' . $v; }, range(1, 100000));
php > foreach($data as $d) { $memcached->add($d, $d); }
php > $multi = $memcached->getMulti($data);
php > echo is_array($multi);
1
php > echo count($multi);
100000

Я пытался увеличить его до миллиона,но я установил предел сконфигурированной памяти PHP и быстро решил, что если getMulti из ста тысяч элементов недостаточно, вы, вероятно, злоупотребляете memcached.

2 голосов
/ 17 марта 2011

Нет жесткого ограничения, но будут различные практические ограничения, которые, скорее всего, будут зависеть от конкретного приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...