コンサートの座席や航空券をオンラインで注文する場合、レコード レベルのロックが必要ですか、それともトランザクションで十分ですか?
コンサートのチケット(例えば座席番号20B)や航空券(例えばオーバーブッキングでも制限は210)の場合、ウェブサイトはチケット購入画面を表示したときにレコードをロックしたり、トランザクションを開始したりできないと思います。
しかし、ユーザーが「購入の確認」をクリックした後、サーバーはトランザクションを開始し、座席番号 20B を購入して、コミットを試みる必要があります。
別のユーザーが以前のトランザクションでシート 20B を既に購入している場合、現在のトランザクションが失敗するのは「コミット」部分ですか?
では... レコード レベルのロックは必要ないのでしょうか? トランザクションは常に (次々に) シリアル化されるので、「競合状態」がないことを確認できますか? では、どのような状況でレコード レベルのロックが必要になるのでしょうか?