Spring Boot - достаточно ли хранить черные списки токенов в кэше или мне следует сохранить их в базе данных? - PullRequest
0 голосов
/ 21 марта 2019

У меня есть приложение 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 или мне следует создать дополнительный искусственный идентификатор для этой цели?Должен ли я также гарантировать атомарную операцию для помещения черного списка токенов в кеш и сохранения его в базе данных?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...