У меня есть приложение Spring Boot с Redis Cache и базой данных MySql.Я создал класс POJO для занесенных в черный список токенов:
@Getter
@Setter
public class TokenBlackList implements Serializable {
@Id
private String jti;
private Long userId;
public TokenBlackList(String jti, Long userId) {
this.jti = jti;
this.userId = userId;
}
}
Теперь поле jti генерируется UUID (который имеет очень малую вероятность получения дубликата), вместе с userId (я полагаю) они образуют уникальный идентификатор.Теперь достаточно ли хранить эти токены в кеше (я использую Redis one) или я должен также сохранить их в базе данных MySQL?Если да, следует ли использовать комбинированные значения строки jti и long userId в качестве уникального идентификатора в MySQL или мне следует создать дополнительный искусственный идентификатор для этой цели?Должен ли я также гарантировать атомарную операцию для помещения черного списка токенов в кеш и сохранения его в базе данных?