максимальный размер хранилища элемента в memcache составляет 1 048 576 байт (1 МБ), сериализация массива занимает немного места.
если бы вы структурировали свой массив так же просто, как:
array(
[0] => 1,
[1] => 2,
[2] => 3
)
ключ генерируется автоматически, а значение - идентификатором пользователя.
сериализованный массив из 5000 пользователей с номерами 1-5000, использующий эту структуру, имеет длину строки 67792 символа, 50000 пользователей создает массив из 777794 символов.
с номерами от 100000 до 150000 создает сериализованную строку из 838917 символов.
так что при 50k пользователей (как указано в предыдущем вопросе) вы, вероятно, будете ниже лимита в 1 МБ. если у вас есть локальный кеш (APC и т. д.), используйте его вместо этого, или если по какой-либо причине НЕ нужны все идентификаторы одновременно, я настоятельно рекомендую разделить результаты или просто использовать БД. *
также подумайте о структуре данных, которую вы храните в memcached. Если вы используете кеш просто для того, чтобы предоставить вам список первичных ключей для поиска, нужны ли вам другие данные?