14

アマゾン ウェブ サービスでは、それらのキューにより、最大 15 分の表示遅延でメッセージを投稿できます。メッセージを 6 か月間表示したくない場合はどうすればよいですか?

ポーリング/プッシュの問題に対するエレガントな解決策を考え出そうとしています。数秒ごとに SQS (またはデータベース) をポーリングし、表示する準備ができているメッセージをチェックしてから、それらを「表示キュー」などに移動するコードを記述できます。ポーリング アプリケーションが常に完全に機能していることを心配せずに、メッセージをキューに表示できるようにする、より簡単で信頼性の高い方法があればいいのにと思います。

私は AWS や SQS などと結婚していませんが、安定していて信頼性が高く、ステータスのチェックを心配することなく、はるか先のイベントをトリガーできる、クラウドに適したソリューションを見つけたいと思っています。毎日。

私が吠えることを探求するための考えや代替ツリーは大歓迎です。

ありがとう!

4

3 に答える 3

8

視界の遅れを誤解しているようです。その目的は、ポーリングアプリケーションが同じアイテムをキューから2回以上プルしないようにすることです。

つまり、ポーリングシステムにキューから一度に読み取るマシンのクラスターがある場合、アイテムがキューから取り出されると、所定の期間(デフォルトは30秒、最大は15分)は非表示になります。

関連するドキュメントは次のとおりです。

http://docs.amazonwebservices.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/IntroductionArticle.html#AboutVT

...そして特に私のコメントに関連する文は次のとおりです。

「コンポーネントがメッセージを受信した直後、メッセージはまだキューにあります。ただし、システム内の他のコンポーネントがメッセージを受信して​​処理することは望ましくありません。したがって、Amazon SQSは、可視性タイムアウトでそれらをブロックします。 Amazon SQSが、他の消費コンポーネントがそのメッセージを受信して​​処理するのを防ぐ期間。」

アイテムを好きなだけキューに残すことができるので、目的に合わせてSQSを使用できるはずです。

于 2011-12-13T02:53:49.650 に答える