root09
@root09

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

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

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

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

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

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