私は書き込みをサポートするエンドポイントを私のAPIに持っています。問題のリソースは協調的であるため、並行書き込み要求が同時に到着することが予想されるのは妥当です。AWSのバッチ処理でループを閉じるにはどうすればよいですか?
書き込みの回数が少ない場合は、単純なラムダでは比較的簡単です - 現在の状態を読み込み、新しい状態を計算し、比較してスワップし、スワップが成功するか、あきらめるまでスピンします。どちらの場合も、適切なhttp応答を計算して呼び出し側に返します。
APIが成功した場合、競合する書き込みの浪費は、十分に高価になります。
自然な応答は、バッチを消費する関数を使用して要求をキューにコピーするように見えます。各バッチ内で、要求を順番に処理し、新しい書き込みを格納し、要求に対する適切な応答を計算します。
計算されたレスポンスをhttpレスポンスにコピーするオプションと、トレードオフとは何か考慮する必要がありますか?
私の感覚は、(同期的に)メッセージをエンキューした後に、のブロック/ポーリングが必要で、最終的に要求に対する応答が入力されることです。