CentOS 7.9 における RabbitMQ インストールガイド
CentOS 7.9 における RabbitMQ インストール手順
本記事では、CentOS 7.9 に RabbitMQ をインストールする手順を詳しく解説します。
1. RPM パッケージのダウンロード
1.1. Erlang のダウンロード
RabbitMQ は Erlang に依存しているため、まず Erlang をインストールする必要があります。
wget --content-disposition "https://packagecloud.io/rabbitmq/erlang/pack ...
7月31日 05:56 投稿
RabbitMQのメッセージ送信と受信(PHP版)
RabbitMQの基本概念
RabbitMQは、メッセージを受信し、転送する代理です。郵便局に例えると、RabbitMQはメールを受信し、保存し、受信者に転送する機能を担います。
以下はRabbitMQで使用されるいくつかの用語です:
Producer(送信者):メッセージを送信するプログラム。
Queue(キュー):RabbitMQ内部のメッセージを保存するバッファ。
Consumer(受信者):メッセー ...
7月23日 16:37 投稿
Spring BootとRabbitMQを用いた支払い結果通知システムの実装
RabbitMQ設定クラス
@Configuration
public class PaymentNotificationConfig implements ApplicationContextAware {
public static final String PAYMENT_EXCHANGE = "payment_exchange";
public static final String NOTIFICATION_TYPE = "payment_result";
public static final String NOTIFICATION_QUEUE = "payment_notification_queue";
@Bean(PA ...
7月22日 23:05 投稿
バックエンド実装事例:非同期決済解除・分散ロック連携・ログ基盤・Redis多機能活用
RabbitMQ DLXを活用した決済タイムアウト処理
受注システムの状態遷移において、30分以内に決済が完遂しない場合に自動取消しを行う機構を実装しました。メッセージの有効期限(TTL)切れまたは消費者側での明示的拒否を検知し、デッドレターエクスチェンジ(DLX)経由で別キューへ迂回させる構成としています。
@Component
public class OrderStateTransitionConsumer {
...
7月22日 01:46 投稿
RabbitMQによるメッセージ送受信の基礎実装
RabbitMQを用いたメッセージングモデルの概要
分散システムアーキテクチャにおいて、コンポーネント間の疎結合な通信を実現するための強力なミドルウェアとしてRabbitMQが広く普及しています。これはAMQP(Advanced Message Queuing Protocol)を実装したオープンソースのメッセージブローカーであり、信頼性の高い非同期通信を可能にします。ここでは、Pythonのクライアン ...
7月17日 19:04 投稿
Spring Cloud:RabbitMQの高度な機能と信頼性
RabbitMQの高度な機能
1.1. プロデューサーの再試行メカニズム
まず、プロデューサーがメッセージを送信する際にネットワーク障害が発生し、MQとの接続が切断される場合があります。
この問題を解決するために、SpringAMQPはメッセージ送信時の再試行メカニズムを提供しています。つまり、RabbitTemplateがMQとの接続がタイムアウトした後、 ...
7月8日 16:09 投稿
RabbitMQの永続化とメモリディスク制御メカニズム
データ永続化機能
RabbitMQにおける永続化は、エクスチェンジ、キュー、メッセージの3つのレベルで実装されます。
永続化エクスチェンジの定義:第3引数のdurableパラメータで永続化を有効/無効化
channel.declareExchange(exchangeName, exchangeType, true)
永続化キューの定義:第2引数のdurableパラメータで永続化を制御
channel.declareQueue(queueName, true, ...
7月7日 17:43 投稿
RabbitMQ PHPドキュメント:トピック型交換
2019年12月10日10:05:11
原文:https://www.rabbitmq.com/tutorials/tutorial-five-php.html
トピック
(php-amqplibを使用)
前提条件
このチュートリアルでは、RabbitMQが標準ポート(5672)でローカルホスト上で実行されていることを前提としています。別のホスト、ポート、または認証情報を使用する場合は、接続設定を調整する必要があります。
お手伝いが必要ですか
...
6月29日 21:10 投稿
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 投稿