我有一个非常简单的 rails 3.2.6 应用程序。我多年来一直使用 Heroku 来托管原型(prototype),始终处于免费层。我终于在我最新的应用程序上添加了一个付费测功机,并添加了 New Relic 来监控性能。
我在流量接近零的极其简单的页面上看到 4500+ms 的请求时间(我们尚未启动)。 New Relic 表示,99% 的时间都花在了渲染模板上。这是一个 100 行布局内的 75 行完全静态的 haml 模板。申请模板有标准- if current_user.nil?
分支机构。
我还没有添加页面缓存。我当然会这样做,但我想在掩盖它之前确定这种性能非常差的根本原因。有小费吗?我应该从 Heroku 获得什么样的响应时间?在我的本地开发环境中,相同的页面响应时间为 26 毫秒( Assets 在 1.5 秒之前进入)。 New Relic 报告我在 Heroku 上的动态页面的平均响应时间为 2000 毫秒到 6000 毫秒。
编辑:我为静态/打开了页面缓存,现在看到的平均值为 173 毫秒。但我仍然担心我在动态页面上的糟糕平均值。
最佳答案
正如评论中所说,我的猜测是因为在一段时间内第一次点击时,Heroku 将不得不启动应用程序(在免费应用程序的情况下)来服务请求,这会使您的平均请求时间非常慢。
关于ruby-on-rails - Heroku 上的简单 Rails 应用程序性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11053743/