memcached в кластере web, не обновляются данные

  • Автор темы Автор темы sergo
  • Дата начала Дата начала

sergo

Новичок
memcached в кластере web, не обновляются данные

Приветствую!

Возникла проблема при обновлении кэша при работе нескольких веб серверов с memcache.

Веб серверы идентичные, работают с общим сервером memcache.
Однако, если один из серверов обновит данные в memcache,
то на остальных серверах сохраняется старое значение этих данных (ключ один и тот-же) от нескольких секунд до двух минут,
потом данные обновляются.

Может кто сталкивался с подобной проблемой, как ее решили?

Серверы Apache 2.2 в качестве backend и nginx в качестве frontend.
nginx используется в качестве балансировщика.
OS freeBSD 7
 
что значит "на остальных серверах сохраняется старое значение" ?

если они _запрашивают_ этот ключ с мемкэшед-сервера через несколько секунд, то им все еще отдается старое значение?
 
Автор оригинала: Wicked
что значит "на остальных серверах сохраняется старое значение" ?

если они _запрашивают_ этот ключ с мемкэшед-сервера через несколько секунд, то им все еще отдается старое значение?
да
затем, через некоторые время, данные становятся актуальными

однако происходит это не всегда, возможно, в момент когда идет слишком много обращений в memcache

скорее всего связано с тем, что memcache работает асинхронно.
 
причин этому происходить лично я вообще не вижу.

а если данные запросит тот же сервер, который их обновлял?
а если данные запросит тот же сервер, который их обновлял, но после реконнекта?
 
Ищите ошибки в логике. У мемкеша внутри конечный автомат, так что все операции с ним - атомарны. Задержки в появлении данных вызваны другими причинами.
 
согласен с Wicked и MiksIr
мемкешу все равно с какого сервера идет обращение
 
Сверху