ロック制御
## ロック制御
楽観的排他制御 ⇔ 悲観的排他制御
(楽観ロック) (悲観ロック)
悲観的の場合、SELECT時にも行ロックを行う(SELECT ~ FOR UPDATE)
正直、悲観はちゃんと管理しないと、デッドロック発生しまくって凄まじい事になるので、あまりお勧めはしない。
「悲観ロックを使用するデメリット > メリット」といった感触。
特に、コーディングに対して意識が低い人が居るチームだと、避けた方が無難。
<対策>
・読み込んだ時のタイムスタンプを保持する。更新時にタイムスタンプが変わってないかチェックし、変わってたらリロードを促す。
・ロックしているユーザのIDをカラムに持たせる