会員登録すると
学習することができます。
会員登録する(無料)
学習することができます。
登録済みの方はこちら
ログイン
学ぶ目的
「途中で失敗」が最も怖い
口座Aから引いて口座Bに足す。片方だけ成功したら、お金が消えます。トランザクションは、複数の更新を「全部成功か、全部なかったことにするか」のどちらかに強制する仕組みです。
同時に触られると結果が変わる
在庫が1個の商品を、2人が同時に買おうとしたらどうなるか。単体では正しいSQLでも、同時実行では壊れます。分離レベルとロックは、この問題への対処法です。
トランザクションは短く保つ
長いトランザクションは他の処理を待たせ、デッドロックの温床になります。外部APIの呼び出しをトランザクションの中に入れない——実務で効く原則です。
このレクチャーで学ぶこと
- トランザクションとACID
- 分離レベルと同時実行の問題
- ロックとデッドロックへの対処
質問
まだ質問は投稿されていません。
質問投稿
ログイン後に質問の投稿ができます。