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

sergo

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

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

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

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

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

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

Wicked

Новичок
что значит "на остальных серверах сохраняется старое значение" ?

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

sergo

Новичок
Автор оригинала: Wicked
что значит "на остальных серверах сохраняется старое значение" ?

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

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

скорее всего связано с тем, что memcache работает асинхронно.
 

Wicked

Новичок
причин этому происходить лично я вообще не вижу.

а если данные запросит тот же сервер, который их обновлял?
а если данные запросит тот же сервер, который их обновлял, но после реконнекта?
 

MiksIr

miksir@home:~$
Ищите ошибки в логике. У мемкеша внутри конечный автомат, так что все операции с ним - атомарны. Задержки в появлении данных вызваны другими причинами.
 

Alexandre

PHPПенсионер
согласен с Wicked и MiksIr
мемкешу все равно с какого сервера идет обращение
 
Сверху