flyio/laravel-workers

Fly.io上的自动扩展队列工作者

0.1.0 2023-12-07 15:13 UTC

This package is auto-updated.

Last update: 2024-09-07 16:54:14 UTC


README

此包将根据您的队列工作者达到的特定阈值,按需创建Fly.io机器。

安装

您可以通过composer安装此包

composer require fly/laravel-workers

您可以使用以下命令发布配置文件

php artisan vendor:publish --tag="config"

这是已发布配置文件的内容

return [
    'app_name' => env('FLY_APP_NAME'),
    'api_key' => env('FLY_API_KEY'),
    'region' => env('FLY_REGION'),
    'image' => env('FLY_IMAGE_REF'),
    'min_workers' => 2,                 // Number of base workers, always present
    'max_workers' => 10,                // Scale to a max of this many workers
    'scale_controller' => [             // Scale up as directed by this scaler
        'class' => \Fly\Worker\Scalers\JobsPerWorker::class,
        'jobs_per_machine' => 10,
    ],
    'vm' => [
        'cpu_kind' => 'shared', // vs dedicated
        'cpus' => 1,
        'memory_mb' => 1024
    ],
    'connection' => null, // default
    'queue' => null, // default
];

使用方法

fly:work命令添加到您的调度器中,每分钟运行一次,在单个服务器上运行

$schedule->command('fly:work')
    ->onOneServer()
    ->everyMinute();

此命令将根据Scaler类的指示在Fly.io机器上扩展(并缩减)队列工作者。

这假设您也在Fly.io上运行您的Laravel应用程序

许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件