RabbitMQ Publisher Confirms 機能を用いた信頼性の高い配信実装

概要 RabbitMQ における Publisher Confirms(发布者确认)は、メッセージがブローカーに確実に到達したことを保証するための拡張機能です。この機能をチャネルで有効にすると、ブローカーはクライアントが公開したメッセージをサーバー側で処理完毕后、非同期で確認応答(ack)を返します。 前提条件 本ガイドでは、RabbitMQ がローカルホストの標準ポート(5672)で稼働 ...

6月26日 18:33 投稿

CentOS 8 環境における RabbitMQ、Kafka および Supervisor の構築ガイド

ベース環境とリポジトリの準備 CentOS 8 系(および RHEL 互換ディストリビューション)で RabbitMQ を動作させるには、Erlang 実行環境の整備が必須となります。公式が提供するパッケージリポジトリを登録し、依存パッケージの自動解決を有効化します。 # Erlang リポジトリの登録 curl -1sLf https://dl.cloudsmith.io/public/rabbitmq/erlang/rpm/gpg.key | sudo rpm -- ...

6月24日 01:48 投稿

RabbitMQメッセージキュー基礎

メッセージミドルウェアの概要 メッセージミドルウェアは、メッセージの転送過程においてメッセージを保持するコンテナです。メッセージを送信元から宛先へ中継する際に仲介者の役割を果たします。キューの主な目的はルーティングとメッセージ配信の保証です。受信者が利用できない場合、メッセージキューはメッセージを保持し、正常に配信できるまで待機します。もちろん ...

6月19日 22:36 投稿

RabbitMQのメッセージング機構と実装パターン

RabbitMQは、分散システム間での信頼性のあるメッセージングを実現するオープンソースのメッセージブローカーです。本記事では、その基本概念と実際の利用例を解説します。 主な使用シナリオ システム統合と分散アーキテクチャ:オンラインショッピングサイトの注文処理システムと在庫管理システムの連携。メッセージキューを介して非同期処理を行うことで、システムの ...

6月16日 22:31 投稿

RabbitMQのExchangeとDead Letter QueueおよびDelayed Queueの実践ガイド

Exchangeの基礎と種類 Exchangeとは RabbitMQのメッセージングモデルにおいて、プロデューサーはメッセージを直接キューに送信しません。プロデューサーはExchangeにメッセージを送信し、Exchangeがルーティングルールに基づいてキューにメッセージを配信します。 Exchangeの種類 Direct Exchange ルーティングキーと完全一致するキューにメッセージを配信します。例え ...

6月1日 19:37 投稿

RabbitMQによるPHPタスクキューの実装:ワークロード分散と信頼性確保

この記事では、RabbitMQを用いてPHPでタスクキュー(ワーカーキュー)を構築し、複数のワーカープロセス間で重い処理を効率的に分散する方法を解説します。メッセージの永続化や確認応答(acknowledgement)、公平なディスパッチといった信頼性向上のための機能も実装します。 前提条件 RabbitMQがローカルホストの標準ポート(5672)で動作していることを前提とします。 ...

5月30日 10:13 投稿

RabbitMQにおけるメッセージ信頼性と高度なキュー機能

サービス間の非同期通信 RabbitMQを用いたメッセージングにおいては、以下の課題が発生しうる: メッセージの信頼性 死信交換機(DLX)の活用 遅延キューの実現 大量メッセージ蓄積への対応 クラスタ構成による可用性向上 1. メッセージ信頼性の確保 メッセージが送信元から受信先まで確実に到達するためには、以下の機構を組み合わせる必要がある。 1.1 パブリッシャ ...

5月26日 20:03 投稿

RabbitMQを用いた長時間処理の進捗表示

システム概要 長時間処理の進捗をリアルタイム表示するシステムを実装します。フロントエンドからリクエスト受信後、バックグラウンドで処理を実行し、RabbitMQとWebSocketで進捗情報を送信します。 依存関係 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-start ...

5月26日 02:31 投稿

メッセージキュー技術とRabbitMQの基本

I. メッセージミドルウェアの特徴 1. 非同期処理モデル メッセージ送信者は応答を待つことなくメッセージを送信できます。送信者はメッセージを仮想のチャネルまたはキューに送信し、受信者はそのチャネルを購読または監視します。メッセージは最終的に1つまたは複数のメッセージ受信者に転送され、これらの受信者はメッセージ送信者に同期応答をする必要はありません。プ ...

5月22日 21:24 投稿

RabbitMQのメッセージ応答と永続化

1. メッセージ応答 1.1 概念 メッセージ応答メカニズムは、消費者がメッセージを消費した後、RabbitMQにそのメッセージが正常に処理されたことを確認(acknowledge)する仕組みです。このメカニズムにより、メッセージが消費者によって処理された後に適切にキューから削除され、メッセージの消失を防ぐことができます。 2つのメッセージ応答メカニズム 自動応答(Auto A ...

5月22日 04:02 投稿