кэш чтоб каждый раз к монге не ходить. Как в таком случае поддерживают актуальность данных в кэше? Вроде как что в голову приходит - либо надеятся на таймауты либо навесить логику на обновление данных (когда хотим обновить сущность в бд то обновим её и в кэше, если она там есть)
обычно с кеша удаляют сущность которую обновили. и при следующем запросе т.к в кеше ее не будет, то она подгрузится с бд и добавится в кеш
Видел такой кейс: перед тем, как получить данные, заглядываем в кэш. Если есть что возвращать - возвращаем, если нет, то берем из бд и также сохраняем в кэш. При запросах, которые обновляют данные бд, либо обновляем тоже кэш, либо чистим его, в общем, то, о чем вы и писали
Чтение у нас так и происходит. А вот с обновлением не знал как поступить, на СО советовали "да забей, после таймаута норм данные будут". В общем спасибо, так и буду делать (шерстить кэш перед апдейтом)
Апдейт в бд == апдейт кэша, делается одновременно
Обсуждают сегодня