第二部 パフォーマンス編 · 第 9 章 · 約 35 分
ロック — 障害 6: セール開始直後に注文が失敗する
行ロック待機、逆順ロックによるデッドロック、ネクストキーロックとギャップロックの挙動、インデックスのない更新がテーブル全体を止めてしまう怖さを体験します。
無料プレビュー
前提: 在庫テーブル stocks を、独立した2つのデータベース接続から同時に操作します。
この章で答える問い
- 同じ在庫を2つの接続から更新すると何が起きるのか?
- 待機がタイムアウトへ変わる境界はどこで決まるのか?
- アクセス集中と、ロックを握ったまま離さない状態は何が違うのか?
同一レコードに対する2つの接続からの更新
片方の接続が在庫を更新したまま確定せず、もう片方も同じ行を更新するときの待機状態を再現します。
無料プレビューはここまで
続きでは、CPUにもディスクにも余裕があるのに注文だけが止まる原因を、2つの接続で再現します。
ここからの学習は有料プラン(買い切り)となります
¥500 税込・買い切り(追加費用なし)
ご購入いただくと、第二部 2〜10 章(実行計画、選択性、複合インデックス、InnoDB の内部構造、ソートとページング、JOIN、書き込みコストと DDL、ロック、同時実行)の全編、すべてのラボの計測データ再生機能、および章末の理解度確認クイズをご利用いただけます。
※ ご購入時と同じ Google アカウントでログインすることで、すぐに続きを閲覧いただけます。デジタルコンテンツの性質上、購入後の返金は原則としてお受けできません。まずは無料の 13 章と各有料章のプレビューをお試しいただき、ご納得の上でご購入ください。