0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

デッドレターキュー

Posted at

デッドレターキュー(Dead Letter Queue:DLQ)」とは、
処理に失敗したメッセージを一時的に保存しておくキューのことです。

主にメッセージングサービス(例:Amazon SQS、SNS、Kafka、RabbitMQ など)で使われ、トラブルシューティングや再処理を容易にするために用いられます。


✅ 例えるなら...

宅配便の再配達コーナー」みたいなものです。
何度も届けようとして失敗した荷物(メッセージ)を、あとでまとめて確認・対応できる場所です。


🔧 具体的な仕組み(Amazon SQSの例)

  1. 通常のキュー(メインキュー)にメッセージが入る
  2. コンシューマーがメッセージを処理しようとする
  3. 処理に失敗(例:アプリケーションエラー)
  4. 最大再試行回数(例:3回)を超えるとDLQに送られる

💡 なぜ必要?

  • 何が失敗しているかを追跡できる
  • システム全体が止まるのを防ぐ(失敗メッセージだけ隔離)
  • 後で人間やバッチ処理で再処理や手動対応ができる

🛠️ よくある使いどころ

サービス DLQの使い道
Amazon SQS 処理に失敗したメッセージをDLQに移す設定が可能
AWS Lambda 関数の実行に失敗したイベントをDLQへ
Amazon SNS 配信に失敗した通知をDLQへ

📌 注意点

  • DLQに入ったメッセージは自動で再処理されません
     必要なら定期的に監視・手動再送する仕組みが必要です。
  • 処理失敗の原因がアプリ側なのか、データなのかを分析しやすくなる

📝 まとめ

項目 内容
DLQとは? 処理失敗メッセージを隔離しておく場所
目的 エラーハンドリングと可観測性の向上
再処理 基本的に手動 or 別バッチで行う
関連AWSサービス SQS、SNS、Lambda、EventBridge など

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?