Кэш и база данных

#caching #couchbase

#кэширование #couchbase

Вопрос:

У меня есть веб-приложение. Токены аутентификации хранятся в кэше в памяти, а не в базе данных. Я использую Couchbase для кэширования. Во время развертывания приложения кэш будет потерян, и все пользователи впоследствии выйдут из системы, поскольку токены хранятся в кэше. Что я могу сделать, чтобы предотвратить потерю моего кэша? Я все еще не хочу использовать базу данных для хранения токенов.

Ответ №1:

Вы намеренно очищаете свои корзины? Или вы имеете в виду, что используете пакеты типа «memcached», которые не выдерживают перезагрузки?

Я бы рекомендовал вам настроить тип корзины «couchbase» и использовать время истечения срока действия при сохранении сеанса. В этом случае у вас будет постоянный сеанс, но все еще не закончится пространство, поскольку старые неактивные сеансы будут удалены автоматически.

Комментарии:

1. Я использовал пакеты типа couchbase. Spring cache не поддерживает сегменты типа memcache. Но время истечения срока действия в ttl у меня не работает нормально. Я устанавливаю время истечения срока действия, используя Java sdk для spring cache.

Ответ №2:

Я был неправ. Кэш сохраняется. Даже после перезагрузки сервера. Странно, но да, это так. Может быть, couchbase переносит кэш на диск при перезагрузке. Кроме того, мой вариант использования включал Spring, который исключает возможность использования корзины типа «memcached».