performance - 为什么 Puma 在 Ruby 2.5.4 上响应缓慢或以集群模式挂起
问题描述
我添加这个问题是因为我花了很长时间才弄清楚它是由升级到 Ruby 2.5.4 引起的。我不确定可以重现此问题的最小案例,但我在 Puma 3.11 上以集群模式在 Google Cloud Platform 中由 Cloud66 管理的 Kubernetes 集群上的 docker 容器中运行 Rails 5 应用程序。
当我以集群模式启动服务器(多年来一直是我们的默认配置)时,在 ruby 2.5.4 上,服务器需要一分钟或更长时间才能响应,或者更常见的是根本不响应,即使是静态文件请求(即curl localhost:3000/404.html
)
我发现了这个我认为相关的错误(但可能是巧合,因为没有其他人报告过与此相关的特定行为):https ://github.com/puma/puma/issues/1674
这是一个红宝石错误吗?其他人是否正在经历这种情况?是否有解决方法(除了恢复到 Ruby 2.5.3)?
解决方案
事实证明这个错误被报告了,我错过了它,因为它已经在 Ruby 2.5.5 中修复了!https://github.com/puma/puma/issues/1744
(不幸的是2.5.5
,dockerhub 上的 ruby 存储库中还没有标签,但2.5
标签确实包含修复)
推荐阅读
- wso2 - 我们可以在 wso2 5.6 中使用 @ 符号创建用户名并生成令牌吗?
- apache-flink - Apache Flink 中的自定义记录读取器
- javascript - HTML Canvas 弧线绘制在错误的位置 JavaScript
- java - 如何使用 BufferedReader 一次又一次地读取相同的 txt 文件?
- javascript - SetInterval 函数中的递归调用是如何工作的?
- java - java - 如何轻松检索Java中聊天应用程序的嵌套firebase实时数据库数据?
- f# - 将选项返回值与选项值进行比较
- swift - Xcode / 斯威夫特 | 在 UIButton 上使用 .addTarget 和守卫
- express - Multer Express:每个请求的不同文件夹
- php - Wordpress 添加、更新和获取 Post Meta 不起作用