Database Laravel队列导致数据库连接数溢出?

Database Laravel队列导致数据库连接数溢出?,database,laravel,multithreading,postgresql,queue,Database,Laravel,Multithreading,Postgresql,Queue,我使用t2.medium(2核,4GB内存)AWS PostgreSQL RDS作为数据库,Laravel作为后端。队列驱动程序是数据库。我每天只有2k个用户 昨天,由于没有预测到DB的完整连接计数,系统停机。经过调查,我发现原因是排队。它们产生的数据量太大,数据库无法使用 这是我的管理员配置: [program:mydata-worker] command=php xxxxxx/artisan queue:work database --tries=5 --timeout=300 proces

我使用t2.medium(2核,4GB内存)AWS PostgreSQL RDS作为数据库,Laravel作为后端。队列驱动程序是数据库。我每天只有2k个用户

昨天,由于没有预测到DB的完整连接计数,系统停机。经过调查,我发现原因是排队。它们产生的数据量太大,数据库无法使用

这是我的管理员配置:

[program:mydata-worker]
command=php xxxxxx/artisan queue:work database --tries=5 --timeout=300
process_name=%(program_name)s_%(process_num)02d
autostart=true
autorestart=true
user=www-data
numprocs=15
此查询在1h中计数,66k队列在此等待,但仅消耗3k:

这处于良好状态,所有队列都已消耗

这里的问题是:

  • 我的supervisord.conf正确吗?我应该减少“--trys=5”还是“numprocs”
  • 当连接计数达到阈值(例如100)时,如果我删除“jobs”表是否安全
  • 你们能给我一个设计多线程安全服务器的提示吗

  • 我把它修好了,因为它锁住了工人。我在这篇文章中解释了=>