RabbitMQをメッセ,ジのブロ,カ,として使う
RabbitMQをメッセ,ジのブロ,カ,として使う
RabbitMQはとても有名なメッセージブローカーで,PostgreSQLの代わりに使うことができます。
PostgreSQLからRabbitMQに切り替える
メッセ,ジブロ,カ,としてPostgreSQLの代わりにRabbitMQを利用します:
12 3 4 5 6 7 8 9 10 11 12 13 14
——/ config /包/ messenger.yaml+ + + b / config /包/ messenger.yaml@@ -5,10 +5,7 @@框架:传输:# //www.oldmanjams.com/doc/cu欧宝娱乐app下载地址rrent/messenger.html#transport-configuration async:- dsn: '%env(MESSENGER_TRANSPORT_DSN)%'——选择:—use_notify: true—check_delayed_interval: 60000+ dsn: '%env(RABBITMQ_URL)%'Retry_strategy: max_retries: 3 multiplier: 2
メッセンジャ,用にRabbitMQサポ,トを追加する必要があります:
1
$欧宝娱乐app下载地址Symfony作曲家请求amqp-信使
DockerにRabbitMQを追加する
既に予想していたかもしれませんが,RabbitMQを码头工人组成にも追加する必要があります:
12 3 4 5 6 7 8 9 10 11 12 13
——/ docker-compose.yml+ + + b / docker-compose.yml@@ 19,6 +19,10 @@ services: image: redis:5-alpine ports: [6379]+ rabbitmq:+镜像:rabbitmq:3.7-management+端口:[5672,15672]+卷:##> doctrine/doctrine-bundle ### db-data:
Dockerサ,ビスを再起動する
码头工人组成でRabbitMQコンテナを扱わせるために,コンテナをすべて停止して再起動します:
1 2
$docker-compose停止$Docker-compose up -d
1
$睡眠10
RabbitMQのWeb管理画面を使う
RabbitMQを通っていくキューやメッセージを見たければ,RabbitMQのWeb管理画面を開きます:
1
$欧宝娱乐app下载地址symfony开放:当地的: rabbitmq
あるいはWebデバッグからも見ることができます:
RabbitMQの管理画面には客人
/客人
アカウントを使ってログ电子邮箱ンします:
RabbitMQをデプロescする
RabbitMQをプロダクションサ,バ,に追加するには,サ,ビスのリストに追加します:
1 2 3 4 5 6 7 8 9 10 11
——/ .platform / services.yaml+ + + b / .platform / services.yaml@@ -18,3 +18,8 @@ files: rediscache: type: redis:5.0++队列:+ type: rabbitmq:3.7+磁盘:1024+尺寸:S
网址コンテナの設定でも参照し,amqp
php拡張を有効にします:
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
——/ .platform.app.yaml+ + + b / .platform.app.yaml@@ -8,6 +8,7 @@依赖:运行时:扩展:+ - amqp- apcu - blackfire - ctype @@ -42,6 +43,7 @@ mounts: relationships: database: "database:postgresql" redis: "rediscache:redis"+ rabbitmq: "queue:rabbitmq"钩子:build: |
RabbitMQサービスがプロジェクトにインストールされると,トンネルを使ってWeb管理画面にアクセスできるようになります:
1 2 3 4 5
$欧宝娱乐app下欧宝体育应用最新版app下载载地址symfony云:隧道:开放$欧宝娱乐app下载地址symfony开放:远程:rabbitmq#完成时$欧宝娱乐app下欧宝体育应用最新版app下载载地址symfony云:隧道:关闭
より深く学ぶために
此工作,包括代码示例,是根据知识共享协议BY-NC-SA 4.0许可证。