Я не уверен, что у вас такие же ожидания от memcache, как и у его дизайнеров.
Во-первых, однако, распространение memcache работает иначе, чем вы ожидаете: нет механизма для репликации хранимой информации.Как вы заметили, каждый экземпляр memcache является простым хранилищем значений ключей.Распределение выполняется клиентским кодом, который имеет список всех настроенных экземпляров memcache и выполняет хеширование ключа, чтобы направить его в один из экземпляров.Клиент может хранить его везде и извлекать его локально или многократно хэшировать его для избыточности, но это не простые упражнения.
Но другая проблема заключается в том, что memcache разработан для разумногонедолговечные данные, которые memcache разрешено выбрасывать в любое время.Это делает его действительно полезным для кэширования часто используемых данных, которые могут быть немного устаревшими (скажем, до нескольких минут), но могут быть дорогими для извлечения (например, почти минута для генерации из запроса).
Сеансы PHP на самом деле не подходят для этого, по моему опыту.База данных может легко поддерживать многие тысячи сессий PHP с едва видимым трафиком, но вам нужно много хранилища memcache для поддержки одного и того же числа: 50k на сессию и 5000 сессий означают около 256Mb, а затем естьвсе остальные данные, которые вы хотите поместить туда.Недостаточно памяти, и вы получаете много необъяснимых выходов из системы (так как memcache отбрасывает данные сеанса, когда находится под нагрузкой памяти) и, таким образом, множество раздраженных пользователей, которые вынуждены продолжать входить снова.