我有一個需要通過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