Knowledge Center Monthly Newsletter - March 2025
Stay up to date with the latest from the Knowledge Center. See all new and updated Knowledge Center articles published in the last month and re:Post’s top contributors.
Amazon Simple Notification Service (Amazon SNS) から HTTP または HTTPS エンドポイントにメッセージを送信したときに表示される「IO Exception in HttpClient」エラーを修正したいと考えています。
Amazon SNS は、サブスクリプション URL または通知メッセージを 1 つ以上の HTTP または HTTPS エンドポイントに送信します。これにより、HTTP または HTTPS エンドポイントのプロバイダーレスポンスで「IO Exception in HttpClient」エラーが生成されることがあります。
エラーの一般的な原因は次のとおりです。
「IO Exception in HttpClient」は一般的なエラーです。メッセージを手動で再送信することで解決できます。ただし、SNS トピックには、失敗したメッセージに対する再試行メカニズムが用意されています。特定の SNS ポリシーの再試行メカニズムを設定する際は、次の点を考慮に入れてください。
再試行の合計数は、遅延なし、最小遅延、最大遅延の再試行回数の合計以上でなければなりません。
numRetries >= numNoDelayRetries + numMinDelayRetries + numMaxDelayRetries
バックオフフェーズで発生した再試行 (関数の再試行) の回数:
Back off function retries = numRetries - numNoDelayRetries - numMinDelayRetries - numMaxDelayRetries
合計最大再試行時間は 3600 秒 (すべての再試行時間の合計) です。これはハードリミットであり、増やすことはできません。
Total time for retries = Pre-backoff phase (numMinDelayRetries * minDelayTarget) + Post-backoff phase (numMaxDelayRetries * maxDelayTarget) + (Back off function retries)
サーバーに、すべての受信要求を受信して処理するのに十分な帯域幅があることを確認してください。
netstat コマンドを実行して、TCP サーバーがすべての受信要求をアクティブにリスニングしているかどうかを確認します。詳細については、IBM ウェブサイトの netstat コマンドを参照してください。
ホスト名が有効であることを確認します。ホスト名にはアンダースコアを含めることはできません。たとえば、your_hostname は許可されていません。
Amazon SNS メッセージ配信の再試行