加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 如何确定在Heroku Performance dyno上运行的Pu

发布时间:2020-12-16 23:21:10 所属栏目:百科 来源:网络整理
导读:我已经阅读了Heroku关于Puma和dyno类型的所有文章,我无法得到直接答案. 我看到一些人提到Puma工人的数量应该由核心数决定.我无法在任何地方找到Heroku揭示性能-M或性能-L dyno有多少核心. 在这篇文章中,Heroku暗示了一种方法: https://devcenter.heroku.com
我已经阅读了Heroku关于Puma和dyno类型的所有文章,我无法得到直接答案.

我看到一些人提到Puma工人的数量应该由核心数决定.我无法在任何地方找到Heroku揭示性能-M或性能-L dyno有多少核心.

在这篇文章中,Heroku暗示了一种方法:
https://devcenter.heroku.com/articles/deploying-rails-applications-with-the-puma-web-server

我认为他们建议将线程设置为1并增加Puma工作者的数量,直到你开始看到R14(内存)错误,然后退出.然后增加线程数,直到CPU最大化,虽然我不认为Heroku报告CPU利用率.

有人可以提供指导吗?

(我还想决定是否应该使用一个性能-L或多个性能-M dynos,但我认为一旦我弄清楚如何设置工人和线程就会很清楚)

解决方法

我目前想出的路线图是这样的:

> heroku运行“cat / proc / cpuinfo”–size performance-m –app yourapp
> heroku运行“cat / proc / cpuinfo”–size performance-l –app yourapp
>记下您拥有的流程信息
>谷歌搜索模型类型,系列,型号,英特尔处理器的步数,以及寻找此处理器具有或模拟的核心数量.
>看看这个https://devcenter.heroku.com/articles/dynos#process-thread-limits
>使用标准-2X /标准1X进行一些小型实验以确定PUMA_WORKER值.
>你的数学是这样的:

(您所需的dyno类型的最大线程可以支持)/(基线dyno的最大线程可以支持)x(您在基线dyno上的实验`PUMA_WORKER`值) – (CPU核心数)

例如,如果我的标准-2X dyno上的PUMA_WORKER为3作为基线,那么性能-m上的PUMA_WORKER数字将开始测试它将是:

16384/512 * 3 – 4 = 92

您还应该考虑应用消耗多少内存并选择最低内存.

编辑:以前我的答案是在ps:exec可用之前编写的.你可以阅读the official document并学习如何ssh到运行dyno(s).它应该比以前容易得多.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读