Amazon Simple Queue Service
開発者ガイド

Amazon SQS コストの削減

次のベストプラクティスは、効率的なメッセージ処理に役立つだけでなく、コストの削減やほぼ即時のレスポンスをもたらします。

メッセージアクションのバッチ処理

コストを削減するには、メッセージのアクションをバッチ処理します。

  • メッセージを送信、受信、および削除し、1 つのアクションで複数のメッセージのメッセージ可視性タイムアウトを変更するには、Amazon SQS バッチ API アクションを使用します。

  • リクエストのバッチ処理によりクライアント側のバッファリングを結合するには、AWS SDK for Java に含まれているバッファされた非同期クライアントとともにロングポーリングを使用します。

    注記

    Amazon SQS のバッファされた非同期クライアント現在、FIFO キューをサポートしていません。

適切なポーリングモードの使用

  • ロングポーリングにより、利用可能になるとすぐに、Amazon SQS キューからメッセージを処理することができます。

    • Amazon SQS の使用コストを削減し、空のキューでの空の受信数 (メッセージを返さない ReceiveMessage アクションへのレスポンス) を減らすには、ロングポーリングを有効にします。詳細については、「Amazon SQS ロングポーリング」を参照してください。

    • 複数の受信により、複数のスレッドをポーリングする際の効率を高めるには、スレッド数を減らします。

    • ロングポーリングは、ほとんどの場合にショートポーリングよりも推奨されます。

  • ショートポーリングは、ポーリングされた Amazon SQS キューが空の場合でも、すぐにレスポンスを返します。

    • ReceiveMessage リクエストへの即時のレスポンスが期待されるアプリケーションの要件を満たすには、ショートポーリングを使用します。

    • ショートポーリングはロングポーリングと同じように請求されます。