使用 Laravel 的 Chaotic Schedule 包随机化命令执行时间
最后更新于 作者: Paul Redmond
Laravel 的 chaotic-schedule 包允许您通过伪随机数生成器 (PRNG) 随机化计划命令的执行时间和日期间隔
您是否曾经想过在一天中的随机时间或一周中的特定日子运行计划的命令?或者您可能需要发送一些通知,不是在固定日期时间,而是在随机间隔内发送,这样感觉更像人为操作。那么这就是您要找的包。
此 Laravel 包使您能够在随机间隔和周期内运行命令,同时尊重您独家设置的边界。
自述文件中提到的一个用例是发送用户通知或电子邮件,但随机发送它们以增加更多个人化的人为触摸。避免以固定间隔在同一时间发送这些消息将更能体现出自动化操作。
// Run a command daily on a random time between 08:15 and 11:42$schedule->command('inspire')->daily()->atRandom('08:15','11:42'); // Run a command every Tuesday, Saturday and Sunday on a random time between 04:20 and 06:09$schedule->command('your-command-signature:here') ->days([Schedule::TUESDAY, Schedule::SATURDAY, Schedule::SUNDAY]) ->atRandom('04:20','06:09');
此包包含许多方法来定义您的随机规范,这些规范基于几个因素,例如
-
dailyAtRandom()
-
hourlyAtRandom()
-
hourlyMultipleAtRandom()
-
randomDays()
- 等等...
您可以在 GitHub 上详细了解此包,获取完整的安装说明,并查看源代码。