メッセージブローカー
Adobe Commerceは、RabbitMQ のオープンソースの Message Broker を使用します。 信頼性が高く、可用性が高く、スケーラブルで、ポータブルなメッセージングシステムを提供します。
メッセージキューは、メッセージの送信者と受信者が互いに接触しない非同期通信メカニズムを提供します。 また、メッセージキューと同時に通信する必要もありません。 送信者がメッセージをキューに入れると、受信者が受信するまで保存されます。
Adobe Commerceをインストールする前に、メッセージキューシステムを確立する必要があります。 基本的なシーケンスは次のとおりです。
- RabbitMQ およびその前提条件をインストールします。
- RabbitMQ をAdobe Commerceに接続します。
Ubuntu への RabbitMQ のインストール
Ubuntu 16 に RabbitMQ をインストールするには、次のコマンドを入力します。
sudo apt install -y rabbitmq-server
このコマンドは、必要な Erlang パッケージもインストールします。
古いバージョンの Ubuntu をお使いの場合は、Web サイトからパッケージをインストールすることをお RabbitMQ めします。
- rabbitmq-server から.deb パッケージをダウンロードします。
dpkg
を含むパッケージをインストールします。
詳しくは、Debian/Ubuntu へのインストールを参照してください。
CentOS への RabbitMQ のインストール
Erlang のインストール
RabbitMQ は、Erlang プログラミング言語を使用して記述されています。この言語は、RabbitMQ と同じシステムにインストールする必要があります。
詳しくは、 手動インストールを参照してください。
正しいバージョンをインストールするには 🔗 RabbitMQ/Erlang のバージョンマトリックスを参照してください。
RabbitMQ のインストール
RabbitMQ サーバーは CentOS に含まれていますが、多くの場合、バージョンは古いです。 RabbitMQ では、Web サイトからパッケージをインストールすることをお勧めします。
サポートされている最新のバージョンを取得するには、RabbitMQ のインストール ページを参照してください。 Adobe Commerce 2.3 および 2.4 は、RabbitMQ 3.8.x をサポートしています。
詳しくは、RPM ベースの Linux へのインストールを参照してください。
RabbitMQ の設定
公式の RabbitMQ ドキュメントを参照して、RabbitMQ の設定と管理を行います。 次の項目に注意してください。
- 環境変数
- ポートアクセス
- デフォルトのユーザーアカウント
- ブローカーの起動と停止
- システム制限
RabbitMQ を使用したインストールと接続
Adobe Commerce after をインストールする場合は、インストール時に次のコマンドラインパラメーターを追加 RabbitMQ ます。
--amqp-host="<hostname>" --amqp-port="5672" --amqp-user="<user_name>" --amqp-password="<password>" --amqp-virtualhost="/"
ここで、
--amqp-host
--amqp-port
5672
です。--amqp-user
guest
は使用しないでください。--amqp-password
guest
は使用しないでください。--amqp-virtualhost
/
です。--amqp-ssl
false
です。 値を true に設定した場合、詳しくは、SSL の設定を参照してください。Connect RabbitMQ
既にAdobe Commerceをインストールしていて、それを RabbitMQ に接続する場合は、<install_directory>/app/etc/env.php
ファイルに次のような queue
セクションを追加します。
'queue' =>
array (
'amqp' =>
array (
'host' => 'rabbitmq.example.com',
'port' => '11213',
'user' => 'magento',
'password' => 'magento',
'virtualhost' => '/'
),
),
bin/magento setup:config:set
のコマンドを使用 RabbitMQ て、設定値を設定することもできます。
bin/magento setup:config:set --amqp-host="rabbitmq.example.com" --amqp-port="11213" --amqp-user="magento" --amqp-password="magento" --amqp-virtualhost="/"
コマンドを実行するか、AMQP 設定値で <install_directory>/app/etc/env.php
ファイルを更新した後、bin/magento setup:upgrade
を実行して変更を適用し、必要なキューと交換を RabbitMQ で作成します。
SSL を設定
SSL のサポートを設定するには、<install_directory>/app/etc/env.php
ファイルの ssl
パラメーターと ssl_options
パラメーターを次のように編集します。
'queue' =>
array (
'amqp' =>
array (
'host' => 'rabbitmq.example.com',
'port' => '11213',
'user' => 'magento',
'password' => 'magento',
'virtualhost' => '/',
'ssl' => 'true',
'ssl_options' => [
'cafile' => '/etc/pki/tls/certs/DigiCertCA.crt',
'certfile' => '/path/to/magento/app/etc/ssl/test-rabbit.crt',
'keyfile' => '/path/to/magento/app/etc/ssl/test-rabbit.key'
],
),
),
メッセージキューコンシューマーの開始
Adobe Commerceと RabbitMQ を接続したら、メッセージキューコンシューマーを起動する必要があります。 詳しくは、 メッセージキューの設定を参照してください。