【问题标题】:How to consume the message in RabbitMq Laravel using the package bschmitt/laravel-amqp如何使用包 bschmitt/laravel-amqp 在 RabbitMq Laravel 中使用消息
【发布时间】:2020-02-11 19:50:39
【问题描述】:

我正在使用 Laravel 包 https://github.com/bschmitt/laravel-amqp/ 在基于微服务的应用程序中使用 RabbitMQ 发布和使用消息。我正在服务中发布消息并尝试在另一个服务中使用相同的消息。

文档对使用队列中已发布消息的代码非常清楚。但是,在传统的 Laravel 队列过程中,我们会在 handle() 方法中描述要执行的过程。并调用 php artisan queue:work 命令执行队列。

但是在文档中,使用消息的代码很清楚,但是如何使用消息并使用工匠命令执行相同的操作令人困惑。

我会在 Laravel 应用程序中在哪里编写代码下面的代码并在生产服务器中收听它:

Amqp::consume('queue-name', function ($message, $resolver) {

var_dump($message->body);

$resolver->确认($message);

});

现在,我正在 AppServiceProvider.php 文件的 boot() 方法中使用队列中的消息。但不确定这是否是正确的方法。

【问题讨论】:

    标签: laravel-5 rabbitmq


    【解决方案1】:

    使用消息的方式是创建一个自定义的 artisan 命令来监听队列。我们需要运行命令并自己处理保持活动,因为包没有提供任何样板。可以通过在配置中将参数 Persistent 设置为 true 来保持连接。

    【讨论】:

      猜你喜欢
      • 2020-05-15
      • 1970-01-01
      • 2013-12-30
      • 1970-01-01
      • 2014-07-08
      • 2018-07-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多