@sandrain

Как решить проблему обращений в мемкеш в одну единицу времени (многопоточность)?

Привет.
Как решить проблему обращений в мемкеш в одну единицу времени (многопоточность).
Суть проблемы - так называемый dog-pile effect (протухание кеша).

Есть вариант основаный на CAS
php.net/manual/ru/memcached.cas.php

Вкраце: данные лочатся, затем обновляются и лок убирается, в момент лока остальные потоки ждут.

Нужен ли при таких потерях времени вообще memcached в многопоточности? Может писать просто в базу ? Потери те же по времени.
  • Вопрос задан
  • 3072 просмотра
Пригласить эксперта
Ответы на вопрос 3
Да нужен, т.к. читать потом придется не из "медленной" базы, а из "быстрого" кэша.
Ответ написан
Комментировать
alekciy
@alekciy
Вёбных дел мастер
Потери те же по времени.

Да ну? А мужики то и не знаю... memcached-ы разные используют...
Ответ написан
Во-первых, какого рода данные хранятся в кэше? Если данные имеют несложную структуру, то лучше использовать файлы.
Во-вторых, если возникает проблема конкурентного доступа к кэш, то зачем он нужен.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы