hyperf如何实现秒级计划任务定时器

计划任务可以每隔多久执行一个任务

我们会经常用到

在hyperf中如何实现秒级的计划任务呢?

>安装

`composer require hyperf/crontab`

>启动任务调度器进程

```
将 config/autoload/crontab.php 内的 enable 配置设置为 true,表示开启定时任务功能,如配置文件不存在可自行创建,配置如下:

true,
];
```

>定义定时任务

```
logger->info(date('Y-m-d H:i:s', time()));
}

/**
* @Crontab(rule="* * * * * *", memo="foo")
*/
public function foo()
{
var_dump('foo');
}
}
```

计划任务会在`server`启动后开始执行

如果要实现秒级的

```
定时任务的执行规则,在分钟级的定义时,与 Linux 的 crontab 命令的规则一致,在秒级的定义时,规则长度从 5 位变成 6 位,在规则的前面增加了对应秒级的节点,也就是 5 位时以分钟级规则执行,6 位时以秒级规则执行,如 */5 * * * * * 则代表每 5 秒执行一次。注意在注解定义时,规则存在 \ 符号时,需要进行转义处理,即填写 *\/5 * * * * *
```

本文参考

>`https://blog.csdn.net/weixin_43713498/article/details/106401272
https://blog.csdn.net/weixin_39461487/article/details/117299214
https://www.codercto.com/a/93164.html`

    A+
发布日期:2021年12月28日  所属分类:未分类

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: