我需要知道laravel 5队列管理系统是否适合大项目(拥有大约100,000名用户)。我想每天做一些类似消息传递(而不是垃圾邮件:)的用户。
对于这份工作(排队),redis是否足够好?或者最好使用专门用于排队的库(如beanstalkd)?laravel排队系统适合大项目吗?
回答
为了公平起见,并尝试发布一个合理的回答这个问题,我们应该考虑以下几点:
- 内容交付
- 需要对系统资源的用户数运行同步队列
100,000订阅的电子邮件需要在RAM中存储100,000个[数据],因此我们将电子邮件地址长度平均为32个字符(byt ES)。
100,000×32个字节= 3.2MB
当然,Laravel的排队系统串行化对象,所以实际的内存使用量可能会更高(用于Laravel队列Redis的内存),但还不足以与关心自己。
我建议在过去,对于发出订阅电子邮件消息的看似成功安装将在以下运行:
- 至少2GB RAM
- 2处理器/核心
Laravel运行的队列系统对服务器不是太重要。一如既往,按照需求进行扩展。
软件对这种(使用Laravel)将包括以下内容:
- Redis的
- 主管
设置Redis的作为Laravel的队列驱动程序。请记住composer require predis/predis
。
您还需要创建用于存储失败作业的迁移。 Laravel有一个内置的默认:
php artisan queue:failed-table
php artisan migrate
一旦安装了监控器,在/etc/supervisor/conf.d
所以创建conf文件是主管可以在配置拿起您的队列:
touch /etc/supervisor/conf.d/myprojectqueue.conf
nano /etc/supervisor/conf.d/myprojectqueue.conf
在那里,布置一个配置,以适应您的环境NT。在下面的演示设置中,将立即在您的队列上执行4个队列转轮:
[program:myprojectqueue]
command=php /path/to/project/artisan queue:listen --tries=1
directory=/path/to/project
stdout_logfile=/path/to/project/storage/logs/supervisord.log
redirect_stderr=true
autostart=true
autorestart=true
numprocs = 4
process_name = %(program_name)s%(process_num)s
保存conf文件。开始/重新启动主管。
欲了解更多信息:
https://laravel.com/docs/master/queues
https://laravel.com/docs/master/queues#supervisor-configuration
谢谢@Justin。这是一个完整而有说服力的答案。我试着拉拉维尔用redis排队。我也检查了laravel代码。我发现laravel自己在管理队列,而redis只是一个支持的数据库。我认为这会让队列变慢。只是想知道如果我想实现与我的主项目分离的队列管理系统,那该怎么办。例如用python(django)和芹菜实现?或者用cpp和beanstalk? –
- 1. 排队系统
- 2. .NET排队系统
- 3. M2E不适合大项目吗?
- 4. 项目龙目岛适合大型java项目吗?
- 5. 排队系统的动作
- 6. Perl的排队系统
- 7. 适用于大型项目的快速备份系统
- 8. 团队系统 - 为现有团队项目创建一个Sharepoint项目入口
- 9. 哪些技术适合构建队列管理系统?
- 10. TFS适合小型项目吗?
- 11. 如何制作排队系统?
- 12. 共享内存,MPI和排队系统
- 13. 基本的排队管理系统
- 14. 可靠的Sinatra快速排队系统
- 15. 如何排队系统进程启动
- 16. Laravel项目太大
- 17. 合并团队项目
- 18. 合并XTS系列,时间不排队
- 19. 更适合我的案例吗? RMI或消息系统?
- 20. Cassandra适合需要频繁查询(读/写)的系统吗?
- 21. Python/Django适用于企业大型基于Web的系统吗?
- 22. Pthread队列系统
- 23. 队列系统php
- 24. 合并TFS团队项目集合
- 25. 合并两个laravel项目
- 26. 结合Laravel类别项目
- 27. Grails - 项目构建系统
- 28. asp.net项目投票系统
- 29. 适合系统Windows的右视图
- 30. LARAVEL - 按关系合理排序
为何否决?如果你对此一无所知,你可以不回答。 –