(постоянно принимают сообщения от mqtt брокера) Несколько их я могу запустить с командной строки добавив "&" в конец.
                  
                  
                  
                  
                  
                  Можно ли их запустить программно, используя стандарнтый queue worker?
                  
                  
                  
                  
                  
                  ```for ($i=0;$i<4;$i++) {
                  
                  
                      Artisan::queue("infinity-loop-cmd-$i", [
                  
                  
                          'arg' => $arg,
                  
                  
                      ])->onConnection('database')
                  
                  
                          ->onQueue('mqtt');
                  
                  
                  }```
                  
                  
                  
                  
                  
                  если так, то worker дожидается пока первая не завершится и только потом переходит к следующей. А мне бы их как-нибудь параллельно запустить программно
                  
                  
                  
                  
                  
                  Можно симфонивским new Process(...)->start() это реализовать, но это фактически свой worker (пере)написать
                  
                  
                
а драйвера очередей для вашего брокера в Laravel нет?
типа какой нить async? не искал, думал стандартным обойтись Поищу попробую
что выступает в качестве брокера? RabbitMQ, Zabbix, Kafka?
не какой-то PhpMqtt\MqttClient на моей стороне коннектится к одному из MQTT-брокеров в сети (условно $c = new mqtt_client(); $c->loop())
https://github.com/php-mqtt/laravel-client
dispatch
dispatch(function () { \Artisan::call('process:pricing'); });
Обсуждают сегодня