サービス RabbitMQ 設定
Message Queue Framework (MQF)  は、 モジュール  がメッセージをキューに公開できるようにする、Adobe Commerce内のシステムです。 また、メッセージを非同期で受信するコンシューマーも定義します。
MQF では、メッセージの送受信に使用できるスケーラブルなプラットフォームを提供するメッセージングブローカーとして RabbitMQ を使用します。 また、未配信メッセージを保存するメカニズムも含まれています。 RabbitMQ は、Advanced Message Queuing Protocol (AMQP) 0.9.1 仕様に基づいています。
QUEUE_CONFIGURATION 環境変数を使用してサービスをサイトに接続します。master ブランチを含む Pro 統合環境とスターター環境でのサービス設定については、以下の手順を使用します。
RabbitMQ を有効にするには:
- 
                  
必要な名前、タイプ、ディスク値(MB 単位)を、インストールされている RabbitMQ のバージョンと共に
.magento/services.yamlファイルに追加します。code language-yaml rabbitmq: type: rabbitmq:<version> disk: 1024 - 
                  
.magento.app.yamlファイルで関係を設定します。code language-yaml relationships: rabbitmq: "rabbitmq:rabbitmq" - 
                  
コードの変更を追加、コミット、プッシュします。
code language-bash git add .magento/services.yaml .magento.app.yamlcode language-bash git commit -m "Enable RabbitMQ service"code language-bash git push origin <branch-name> 
services.yaml および .magento.app.yaml の構成ファイルを更新することで、インストールされているサービスのソフトウェア バージョンを変更できます。 サービスのアップグレードまたはダウングレードのガイダンスについては、 サービスバージョンの変更  を参照してください。デバッグ用に RabbitMQ に接続
デバッグの目的では、次のいずれかの方法でサービスインスタンスに直接接続すると便利です。
- ローカル開発環境から接続する
 - アプリケーションからの接続
 - PHP アプリケーションからの接続
 
ローカル開発環境から接続する
- 
                  
magento-cloudCLI にログインし、次のプロジェクトを実行します。code language-bash magento-cloud login - 
                  
RabbitMQ がインストールされ設定されている環境を確認します。
code language-bash magento-cloud environment:checkout <environment-id> - 
                  
SSH を使用してクラウド環境に接続します。
code language-bash magento-cloud ssh - 
                  
$MAGENTO_CLOUD_RELATIONSHIPS 変数から RabbitMQ 接続の詳細とログイン資格情報を取得します。
code language-bash echo $MAGENTO_CLOUD_RELATIONSHIPS | base64 -d | json_ppまたは
code language-bash php -r 'print_r(json_decode(base64_decode($_ENV["MAGENTO_CLOUD_RELATIONSHIPS"])));'応答で、RabbitMQ 情報を見つけます。例:
code language-json { "rabbitmq" : [ { "password" : "guest", "ip" : "246.0.129.2", "scheme" : "amqp", "port" : 5672, "host" : "rabbitmq.internal", "username" : "guest" } ] } - 
                  
RabbitMQ へのローカルポート転送を有効にします(プロジェクトが US-3、EU-5、AP-3 などの別の地域にある場合は、
us-3をeu-5/ap-3/usに置き換えます)。code language-bash ssh -L <port-number>:rabbitmq.internal:<port-number> <project-ID>-<branch-ID>@ssh.us.magentosite.cloudhttp://localhost:15672の RabbitMQ 管理 Web インターフェイスにアクセスする例を以下に示します。code language-bash ssh -L 15672:rabbitmq.internal:15672 <project-ID>-<branch-ID>@ssh.us.magentosite.cloud - 
                  
セッションが開いている間は、選択した RabbitMQ クライアントをローカルワークステーションから起動できます。このクライアントは、MAGENTO_CLOUD_RELATIONSHIPS 変数のポート番号、ユーザー名、パスワード情報を使用して
localhost:<portnumber>に接続するように設定されています。 
アプリケーションからの接続
アプリケーションで動作している RabbitMQ に接続するには、amqp-utils などのクライアントを .magento.app.yaml ファイルのプロジェクト依存関係としてインストールします。
以下に例を挙げます。
dependencies:
    ruby:
        amqp-utils: "0.5.1"
            PHP コンテナにログインすると、キューの管理に使用できる amqp- コマンドを入力します。
PHP アプリケーションからの接続
PHP アプリケーションを使用して RabbitMQ に接続するには、ソースツリーに PHP ライブラリを追加します。