我有一个需要通过WebSockets持续发送通知的项目。它应该连接到以字符串格式返回整体状态的设备。系统处理它,然后根据各种条件发送通知。Laravel schedular:每秒执行一次命令
由于调度程序可以在一分钟内重复执行任务,因此我需要找到一种方法来每秒执行一次函数。
这里是我的app/Console/Kernel.php
:
<?php
...
class Kernel extends ConsoleKernel
{
...
protected function schedule(Schedule $schedule)
{
$schedule->call(function(){
// connect to the device and process its response
})->everyMinute();
}
}
PS:如果你有更好的想法来处理的情况下,请分享你的看法。
使用事件循环触发每一秒守护进程。您可以使用库[icicle](https://icicle.io/)作为该任务,[supervisord](http://supervisord.org/)作为管理器,如果意外退出,将启动该过程。这可能看起来过于夸张,但某些事情看起来很简单,直到解决问题的核心。如果你需要不断更新,这是一条路。 – Mjh