banner
指数爆炸

指数爆炸

我做了对饭 !
github
bilibili

redisのトランザクションはロールバックできませんが、そのトランザクションにはまだ何か意味がありますか?

序文#

Redis の学習中に、Redis のトランザクション機能がロールバックできないことに気づきました。つまり、トランザクションを実行する際に途中で何かエラーが発生した場合、トランザクションを前の状態に戻すのではなく、そのまま続行します。

え?え?トランザクションは何の役に立つの?原子性も一貫性もないじゃないか

資料を調べて考えた結果、少しまとめてみましたが、完全ではないかもしれません

分離性#

ロールバックはサポートされていませんが、並行環境での分離性があります。watchを使用すると楽観的ロックのようなものが実現でき、最後のexec時に競合をチェックします

シンプルで効率的#

Redis のコマンドを多く学んできましたが、ほとんどのコマンドはエラーを返さないことに気付きました。たとえ入力したキーが間違っていても、単にnilを返すだけです。Redis のコマンド構文が間違っている場合や誤ったタイプのキーを使用した場合にのみエラーが発生するため、これらのエラーは開発時に発見されるはずです。

したがって、ロールバックがなくなったことで、Redis の内部はよりシンプルで効率的になり、パフォーマンスが向上します。

つまり、ロールバックをサポートする必要がなくなり、これにより Redis はよりシンプルで効率的になります

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。