在CentOS上配置Laravel队列,你需要遵循以下步骤:
安装Laravel项目:首先,确保你已经在CentOS服务器上安装了Laravel项目。如果还没有,请参考Laravel官方文档进行安装。
配置队列驱动:在Laravel项目中,打开.env
文件,找到QUEUE_CONNECTION
这一行,设置你想要使用的队列驱动。例如,你可以使用Redis、Beanstalkd、SQS等。这里以Redis为例:
QUEUE_CONNECTION=redis
predis/predis
包。在项目根目录下运行以下命令:composer require predis/predis
config/queue.php
文件,找到你选择的队列驱动对应的配置部分。以Redis为例,你需要配置redis
部分:'redis' => [
'client' => env('REDIS_CLIENT', 'predis'),
'default' => [
'host' => env('REDIS_HOST', '127.0.0.1'),
'password' => env('REDIS_PASSWORD', null),
'port' => env('REDIS_PORT', 6379),
'database' => env('REDIS_DB', 0),
],
],
php artisan queue:table
php artisan migrate
supervisord
来管理队列监听器。首先,安装supervisord
:sudo yum install epel-release
sudo yum install supervisor
supervisord
:创建一个新的配置文件/etc/supervisor/conf.d/laravel-worker.conf
,并添加以下内容:[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /path/to/your/laravel/project/artisan queue:work --sleep=3 --tries=3
autostart=true
autorestart=true
user=your-user
numprocs=8
redirect_stderr=true
stdout_logfile=/path/to/your/laravel/project/storage/logs/worker.log
将/path/to/your/laravel/project
替换为你的Laravel项目路径,将your-user
替换为运行队列监听器的用户。
supervisord
:运行以下命令来重启supervisord
,使配置生效:sudo systemctl restart supervisord
现在,你的Laravel队列已经在CentOS上配置好了。你可以使用php artisan queue:work
命令手动启动队列监听器,或者依赖supervisord
自动管理。