我在 Heroku 上使用 Puma Web 服务器,目前有 3 个标准 2x 测功机。该应用程序是 Ruby on Rails。
我的理解是,通过增加 /config/puma.rb
中的 WEB_CONCURRENCY
会增加 puma 工作线程的数量,但会增加 RAM 使用量。
当前设置:
workers ENV.fetch("WEB_CONCURRENCY") { 5 }
问题:
5
个并发工作线程是基于每个 dyno 还是整体?
如果我有 3 个 dyno,这是否意味着我有 15 个 worker ,或者只有 5 个?
我之前一直在寻找一种方法来检查当前现有工作人员的数量,但在 Heroku 上找不到任何命令来执行此操作。
最佳答案
是的,网络并发是基于每个dyno的。
每个dyno都是一个独立的容器,运行在不同的服务器上。因此,您应该将每个测功机视为一个独立的服务器。
关于ruby-on-rails - Heroku 的 Puma WEB_CONCURRENCY 是否基于每个 Dyno?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45223344/