root09
@root09

Как правильно кешировать комментарии?

Подскажите как правильно кешировать комментарии?

Сейчас у меня просто кешируются данные из базы с последними комментариями, на 5 минут стоит кеш, но когда кто-нибудь добавляет комментарий, то его не будет видно эти 5 минут пока не выйдет время кеша, как быть?

Удалять кеш после добавления комментариев? Но в случае если комментарии отправляют раз в несколько секунд, есть ли смысл от этого?
  • Вопрос задан
  • 295 просмотров
Пригласить эксперта
Ответы на вопрос 2
kimono
@kimono
Web developer
Как вариант - триггеры или тегирование кеша.
Ответ написан
Комментировать
zoonman
@zoonman
⋆⋆⋆⋆⋆
В момент, когда вы записали комментарий в базу, вы считываете кэш, добавляете только что полученный комментарий в него и удаляете самый старый из стека, перезаписываете кэш без изменения его времени истечения.
Подход хорошо масштабируется и не увеличивает нагрузку на базу.
Единственный недостаток такого подхода - сложность в реализации изменения кэшированного контента.
Второй недостаток, если не используется общий кэш, а локальные копии на инстансах, то возможна неконсистентность кэша.
Подход может не сработать, если кэш организован неправильным образом.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы