メッセージブローカー

Adobe Commerceは、RabbitMQ のオープンソースの Message Broker を使用します。 信頼性が高く、可用性が高く、スケーラブルで、ポータブルなメッセージングシステムを提供します。

メッセージキューは、メッセージの送信者と受信者が互いに接触しない非同期通信メカニズムを提供します。 また、メッセージキューと同時に通信する必要もありません。 送信者がメッセージをキューに入れると、受信者が受信するまで保存されます。

Adobe Commerceをインストールする前に、メッセージキューシステムを確立する必要があります。 基本的なシーケンスは次のとおりです。

  1. RabbitMQ およびその前提条件をインストールします。
  2. RabbitMQ をAdobe Commerceに接続します。
NOTE
メッセージキューの処理には、MySQL または RabbitMQ を使用できます。 メッセージキューシステムの設定について詳しくは、 メッセージキューの概要を参照してください。 Adobe Commerceで Bulk API を使用している場合、メッセージキューのシステム設定はデフォルトで RabbitMQ をメッセージブローカーとして使用します。 詳しくは、 メッセージキューコンシューマーの開始を参照してください。

Ubuntu への RabbitMQ のインストール

Ubuntu 16 に RabbitMQ をインストールするには、次のコマンドを入力します。

sudo apt install -y rabbitmq-server

このコマンドは、必要な Erlang パッケージもインストールします。

古いバージョンの Ubuntu をお使いの場合は、Web サイトからパッケージをインストールすることをお RabbitMQ めします。

  1. rabbitmq-server から.deb パッケージをダウンロードします。
  2. 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
RabbitMQ がインストールされているホスト名。
--amqp-port
RabbitMQ への接続に使用するポート。 デフォルトは 5672 です。
--amqp-user
RabbitMQ に接続するためのユーザー名。 デフォルトのユーザー guest は使用しないでください。
--amqp-password
RabbitMQ に接続するためのパスワード デフォルトのパスワード guest は使用しないでください。
--amqp-virtualhost
RabbitMQ に接続するための仮想ホスト。 デフォルトは / です。
--amqp-ssl
RabbitMQ に接続するかどうかを示します。 デフォルトは 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 を接続したら、メッセージキューコンシューマーを起動する必要があります。 詳しくは、 メッセージキューの設定を参照してください。

recommendation-more-help
0f8e7db5-0e9c-4002-a5b8-a0088077d995