序文
メッセージ キューは、サービスの分離や仕事でのメッセージ プッシュなど、さまざまなシナリオで使用されるコンポーネントです。一般的に使用されるキュー コンポーネントは次のとおりです。
- アクティブMQ
- ラビットMQ
- ロケットMQ
- カフカ
点对点模式
メッセージ キューには2 つの主なモードがあります。发布/订阅模式
ピアツーピアモード
点对点模式
つまり、メッセージ キューに残されたメッセージは 1 つのコンシューマ (つまり、 メッセージ ) によってのみ消費できます。只会被消费一次
複数のプロデューサが同じメッセージ キューにメッセージを送信できます。コンシューマが消費するとき、消費されたメッセージはロックまたは削除され、他のコンシューマに許可されます。コンシューマによるメッセージの処理に失敗した場合、メッセージはキュー内で再生され、再消費されるまで待機します。
パブリッシュ/サブスクライブ モデル
发布/订阅模式
1 つのメッセージを複数のサブスクライバーが処理でき、サブスクリプションもいくつか临时订阅
に分割されます。持久订阅
临时订阅
: 一時的なサブスクリプションでは、コンシューマの開始後にサブスクリプションが処理されます。コンシューマがオフラインになると、サブスクライブしたメッセージも失われます
持久订阅
: 永続サブスクリプションは、コンシューマーが終了した後でもサブスクライブされたメッセージを維持し、後で再処理できます。
選択
ビッグデータの分野で選択される可能性が最も高い場合Kafka
、データスループットが他よりもはるかに優れており、立ち上げられActiveMq
ますApache
が、その後のメンテナンスがますます少なくなるため、ビッグデータ以外の分野で一般的に使用される場合フィールドでは、特にRabbitMQ
と を使用することをお勧めしますRocketMQ
。選択はそれぞれの選択肢に依存し、この記事RocketMQ
以降、。
インストール
オペレーティング システム:Centos 7.6
必要な依存関係: JDK1.8
RocketMQ 公式 Web サイト: RocketMQ
RocketMQ
環境に依存する必要があるJava
ため、JAVA
環境をインストールする必要があります。インストールする必要がある場合は、JDK1.8
次の記事を参照してください: JDK1.8 をインストールする
RocketMQ インストール パッケージをダウンロードします。
wget https://archive.apache.org/dist/rocketmq/4.7.1/rocketmq-all-4.7.1-bin-release.zip
インストールパッケージを解凍します
unzip rocketmq-all-4.7.1-bin-release.zip
ディレクトリを移動します:
mv rocketmq-all-4.7.1-bin-release /usr/local/rocketmq-4.7.1
構成ファイルを変更します。
vim /usr/local/rocketmq-4.7.1/conf/broker.conf
構成の最後に次の構成行を追加します。
BrokerIP1 は独自のパブリック ネットワーク アドレスとして書き込まれます。
enablePropertyFilter=true
namesrvAddr=127.0.0.1:9876
brokerIP1=xxx.xxx.xxx.xxx
起動する
開始コマンド:
nohup /usr/local/rocketmq-4.7.1/bin/mqnamesrv & nohup /usr/local/rocketmq-4.7.1/bin/mqbroker -c /usr/local/rocketmq-4.7.1/conf/broker.conf &
起動に成功したら、mq プロセスを確認します。
ps -ef|grep rocketmq
以下の図に示すように、正常に起動します。