orisai / nette-scheduler
Nette 的 Orisai Scheduler 集成
1.2.1
2024-06-21 13:38 UTC
Requires
- php: 7.4 - 8.3
- nette/di: ^3.0.5
- nette/schema: ^1.1.0
- orisai/cron-expression-explainer: ^1.0.0
- orisai/exceptions: ^1.0.0
- orisai/nette-di: ^1.0.7
- orisai/scheduler: ^1.0.0|^2.0.0
Requires (Dev)
- brianium/paratest: ^6.3.0
- infection/infection: ^0.26.0|^0.27.0|^0.28.0|^0.29.0
- orisai/coding-standard: ^3.0.0
- orisai/nette-console: ^1.2.0
- phpstan/extension-installer: ^1.0.0
- phpstan/phpstan: ^1.0.0
- phpstan/phpstan-deprecation-rules: ^1.0.0
- phpstan/phpstan-nette: ^1.2.0
- phpstan/phpstan-phpunit: ^1.0.0
- phpstan/phpstan-strict-rules: ^1.0.0
- phpunit/phpunit: ^9.5.0
- staabm/annotate-pull-request-from-checkstyle: ^1.7.0
- tracy/tracy: ^2.7.0
README
Nette Scheduler
Orisai Scheduler 为 Nette 提供集成
📄 查看我们的文档。
💸 如果您喜欢 Orisai,请捐赠。谢谢!
注册调度器扩展
extensions: orisai.scheduler: OriNette\Scheduler\DI\SchedulerExtension
创建作为作业运行的服务
namespace Example; class ExampleJobService { public function run(): void { // Do something } }
orisai.scheduler: jobs: - expression: * * * * * callback: [@example.job.service, 'run'] services: example.job.service: Example\ExampleJobService
创建带有调度器设置的脚本(例如 bin/scheduler.php
)
use Orisai\Scheduler\Scheduler; require __DIR__ . '/../vendor/autoload.php'; $configurator = Bootstrap::boot(); $container = $configurator->createContainer(); $scheduler = $container->getByType(Scheduler::class); $scheduler->run();
配置 crontab 以每分钟运行您的脚本
* * * * * cd path/to/project && php bin/scheduler.php >> /dev/null 2>&1
需要更多信息?文档在这里。