NodeJS push queue, consumed by Laravel worker(NodeJS 推送队列,由 Laravel worker 消费)
问题描述
I'm trying to consume messages sent to SQS by a Node App. So the "push" action is performed by Node App on the server A, the "listen" action by Laravel App on server B.
My problem: I don't know how to format the payload to be consumed with php artisan queue:work
.
Has anyone experienced this before and found a solution?
Thanks!
Found it! After some tests I finally menage to read messages from the queue.
Basically, the payload must have a job property with the class responsible for executing the work and a data property with the actual data. Something like:
var payload = {
job: 'App\Jobs\MyTestJob@handle',
data: {user: foo, email: bar@example.com}
};
Then the payload will be encoded to json string and sent to SQS.
On Laravel side the Job class look like this:
public function handle($job, $data){}
The queue handler will automatically decode and inject the properties on the method specified in the payload.job. If no method is specified Laravel will try to run ::fire() method.
这篇关于NodeJS 推送队列,由 Laravel worker 消费的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:NodeJS 推送队列,由 Laravel worker 消费
- Mod使用GET变量将子域重写为PHP 2021-01-01
- 如何定位 php.ini 文件 (xampp) 2022-01-01
- Laravel 仓库 2022-01-01
- 正确分离 PHP 中的逻辑/样式 2021-01-01
- SoapClient 设置自定义 HTTP Header 2021-01-01
- PHP Count 布尔数组中真值的数量 2021-01-01
- 带有通配符的 Laravel 验证器 2021-01-01
- Oracle 即时客户端 DYLD_LIBRARY_PATH 错误 2022-01-01
- 没有作曲家的 PSR4 自动加载 2022-01-01
- 从 PHP 中的输入表单获取日期 2022-01-01