ruby-on-rails - Rails 日志中的 "object allocation during garbage collection phase"是什么意思?

标签 ruby-on-rails ruby ibm-cloud

我正在尝试在 IBM Bluemix 上运行 Rails 应用程序并使用 Blitz.io 对其进行负载测试。当我在浏览器中访问该应用程序时,一切都很好。然而,当 Blitz 尝试访问它时,应用程序崩溃了。日志条目如下所示:

2014-12-20T16:26:45.55-0500 [RTR]     OUT **[my app name]**.mybluemix.net -     [20/12/2014:21:26:43+0000] "GET / HTTP/1.1" 200 12784 "-" "blitz.io; <a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="88edb1bfb8edbfbab8ebbceebabaebb1bceebfecb0bababfbbb9bebdbae9bfbcbdc8b9bbb8a6b9beb8a6bea6bdbc" rel="noreferrer noopener nofollow">[email protected]</a>" 75.126.70.42:54311 x_forwarded_for:"-" vcap_request_id:ba32f5d0-e157-4229-61f5-13eb7ab3d2d0 response_time:2.182336949 app_id:1e6ad01b-c7b4-4f57-8d9d-8d333807bb15

2014-12-20T16:26:46.60-0500 [App/0]   ERR /home/vcap/app/vendor/ruby2.0.0/lib/ruby/2.0.0/webrick/server.rb:284: [BUG] object allocation during garbage collection phase

这是什么意思?我对如何调试这个问题有点茫然,甚至不知道问题出在哪里。我的应用程序代码有问题吗?配置问题?

我不确定我是否包含了足够的错误日志来提供帮助。其余的在这里:

http://pastebin.com/Jv6jUksv

最佳答案

您可以在 Gem 文件中指定要在应用程序中运行的 Ruby 版本。 Bluemix 中的 Ruby 构建包支持 Ruby v2.1.x、v2.2 等。

但我猜错误的可能原因是您的应用程序超出了分配给您的应用程序的内存配额。 Bluemix 使用 CloudFoundry,如果应用程序实例消耗的内存多于分配的内存,它将终止该应用程序实例。您可以在执行“cf Push”时指定“-m”选项来增加分配给应用程序的内存。例如:

cf push -m 1G

关于ruby-on-rails - Rails 日志中的 "object allocation during garbage collection phase"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27584619/

相关文章:

ruby-on-rails - 开始 Ruby on Rails 项目的流程

ruby - 使用 .split() 保留空格?

BlueMix 上的 Docker 卷大小限制

ruby-on-rails - 多对多关系的复选框

html - 如何在 Rails 中处理 'name' 图像?

javascript - TinyMCE 限制scrollerActived 上的文本

ruby-on-rails - 使用 pik 后,gem 列表不显示本地 gems

ruby-on-rails - 在具有 enum_attr 的记录上调用 .all 时参数数量错误

docker - 如何 docker exec 到 IBM bluemix 容器

docker - IBM Containers:无法使用 “cf ic login”登录