データベース サーバー (MySQL) があります。
これは製品のテーブルを保持します。製品テーブルのフィールドの 1 つは、残りの数量です。
注文時に残りの数量を照会するクライアントはほとんどありません (約 10)。注文が完了すると、残りの数量は注文に基づいて減少します。
数量が少ない場合に問題に直面します。たとえば、残りの数量が「10」で、client1 が 8 数量の注文を作成しており (注文はまだ行われていませんが、処理中です)、client2 が 5 数量の注文を出した場合、後者で注文したクライアントは失敗します。
あるクライアントが注文処理中の場合、他のクライアントには (残りの数量 - クライアント 1 の注文数量) のみが表示されるようにシステムを改善したいと考えています。当初は注文表に入力された時点で残数を変更しようと考えていたのですが、これでは注文がキャンセルされたり、注文をしているパソコンの電源が落ちたりクラッシュしたりした場合に問題が発生します。
このケースを効果的に処理するための適切なアルゴリズムを提案してください..注文が進行中のときはいつでも、他のすべてのクライアントには (残りの数量 - 進行中の注文の数量) のみが表示されます。