トランザクションは、単一のステップで実行されるコマンドのセットです
トランザクション内のすべてのコマンドは、単一の分離操作として順番に実行されます。Redisトランザクションの実行中に別のクライアントにリクエストを行うことはできません。
Redisトランザクションもアトミックです。アトミックとは、すべてのコマンドが処理されるか、何も処理されないことを意味します。
トランザクションを使用
#启动事务:MULTI
命令列表
执行事务:EXEC
その他のコマンド:
DISCARD:MULTI
WATCHの後に発行されたすべてのコマンドを破棄します(キーをロック、楽観的ロック):指定されたキーを監視して、トランザクションブロックの実行を決定します
UNWATCH:ロック解除
備考:
-
トランザクションを開始するときに時計を使用して時計の
キーをロックする—キーの
ロックを解除する—ロックされたキーのロックを解除する -
トランザクションの実行が失敗した場合は、操作のロックを解除します
-
コンパイルエラー:コマンドが正しく記述されていません。すべてのコマンドは実行されません
-
実行時エラー:コマンドを実行できません。他のコマンドはまだ実行されています(つまり、トランザクションはキューに入った後に実行されます)
Springbootで使用されるRedisプラグイン
jedis:直接接続と複数のスレッド操作を使用するのは安全ではありません。この問題を解決するには、jedisプールを使用できます。
レタス:スレッド共有、2.x以降のデフォルトで使用