2017-04-23 8 views
0

私はアマゾンSQSキューを持っていると私はそれがこのように動作させるためにしようとしていてください:アマゾンSQS - x秒のためのメッセージを目に見えない

  • 新しいメッセージがキューに追加すると、受信のみ最初のクライアントをそのメッセージは、他の人のために働く
  • を開始します、メッセージは一定の期間のために目に見えないだろう

それは、この使用して可視性タイムアウトを行うことは可能ですか?

+1

何を試しましたか? –

+2

これはまさにAmazon SQSのデフォルトの動作です。 –

答えて

1

コンシューマがSQSキューからメッセージを受信して​​処理すると、メッセージはキューに残ります(コンシューマによって削除されるまで)。他のコンシューマが同じメッセージを処理しないようにするには、可視性のタイムアウトをキューに設定します。メッセージがコンシューマによって処理されたら、キューからメッセージを削除できます。可視性のタイムアウト期間中、他の消費者は同じメッセージを受信して​​処理することができません。

0

メッセージを「ロック」する方法はありませんが、長時間を設定する場合を除いて、Visibility Timeoutは最大12時間のタイムアウトです。

しかし、エラー/クラッシュも含めて本当に懸念がある場合は、デッドレターキューの再配信ポリシーを使用して、処理に時間がかかるキューの内容を無期限に処理できます。

関連する問題