【发布时间】:2019-09-17 22:23:28
【问题描述】:
我最近从乘客更改为 puma,因为它不断给我“请求限制超出错误”,我在网上看到乘客免费版本不支持多线程。我的后端应用程序托管在两个 AWS c5xlarge 实例上,顶部有弹性负载均衡器。有人可以帮我解决我应该在 puma 配置中设置的工作线程数和线程数,以及我可以使用这些设置服务的最大并发请求数吗?
【问题讨论】:
标签: ruby-on-rails amazon-web-services nginx puma
我最近从乘客更改为 puma,因为它不断给我“请求限制超出错误”,我在网上看到乘客免费版本不支持多线程。我的后端应用程序托管在两个 AWS c5xlarge 实例上,顶部有弹性负载均衡器。有人可以帮我解决我应该在 puma 配置中设置的工作线程数和线程数,以及我可以使用这些设置服务的最大并发请求数吗?
【问题讨论】:
标签: ruby-on-rails amazon-web-services nginx puma
您的问题没有明确的答案。这取决于很多参数。
您应该创建一个基准脚本,该脚本从多个进程和/或线程发送大量请求,并且您的服务器是否可以处理来自多个实例的繁重负载,并查看一秒钟内处理了多少请求。
在您进行此基准测试后,尝试更改线程和工作线程的数量,以增加使用此基准提供的请求数量。
我会从一个 nginx worker 开始,线程数作为 cpu 核心数,根据基准增加或减少。
【讨论】: