2017-05-21 12 views
1

現在、すべての認証のためにセッションの代わりにJWTを使用してMEANスタックユーザー登録/ログインシステムを実装しています。JWTの失効情報を格納する場所、mongoDBまたはRedis?

JWTを取り消すには、JWT情報をトークンブラックリストの一部として保存する必要があります。私の最初の考えはブラックリストに載ったトークンを格納するためにMongoDBを使うことでしたが、Redisも適切でしょうか?この場合、Redisを避けることを躊躇するのは、サーバがクラッシュしたり再起動したりすると、トークンブラックリストが失われてしまうのに対し、MongoDBではブラックリストは元のまま残るということです。

アドバイスをいただければ幸いです。ありがとうございました。

答えて

2

Redisは、ディスクベースの永続性の複数のモードをサポートしています。 save configディレクティブを使用してスナップショット永続性(RDB)を有効にし、appendonly yes configディレクティブを使用して変更履歴の永続性(AOF)を有効にすることができます。

ご使用の場合は、おそらくAOFの永続性を使用する必要があります。

レディスパーシスタンスの詳細については、https://redis.io/topics/persistenceをご覧ください。

+1

ありがとうございます。私はレディスが存続するかもしれないことを知らなかった。マニュアルを読む。興味のないところでは、シンプルなMongoソリューションではなく、AOFを有効にしてRedisを使用することに利点があるとお考えですか?私は、データアクセス速度がデータセットのサイズに依存していると推測しています。したがって、Redisはメモリ内に存在するため、小さなデータセットのほうがよいでしょう。 –

関連する問題