【发布时间】:2016-04-30 11:19:51
【问题描述】:
我已经阅读了 Richard Schneeman 的文章以及其他一些文章。 ;-) 我还在为此苦苦挣扎。
以下是我在 Gemfile 中添加的几个 gem,用于对我的应用进行基准测试:
gem 'airbrake'
gem 'newrelic_rpm'
gem 'stackprof'
gem 'derailed', group: :development
gem 'rack-mini-profiler'
gem 'flamegraph'
gem 'memory_profiler'
gem "skylight"
在开发和暂存环境中进行了大量基准测试后,我知道我的应用程序不够快但没有内存泄漏(有时可能会出现一些小的内存膨胀)。
newapp-staging 应用是 oldapp-production 应用的新版本(又名:新的前端、升级的 gem、优化的查询……)。 请看截图(oldapp-production 使用 webrick,newapp-staging 使用 puma)
所以这里有两个简单的问题:
问题 #1
newapp-staging 应用程序正在使用 ruby '2.2.0' 和 rails '3.2.22.2' ,由于我的代码和相关的 gem,我无法确保它是线程安全的,所以。 .. 我必须一次使用 1 个线程。彪马在这里有优势吗?指标告诉我不是。 或者……我的配置不好。 (可能缺少 preload_app! 或其他东西?)这是我的 Procfile:
web: bundle exec puma -t 1:1 -p ${PORT:-3000} -e ${RACK_ENV:-development}
worker: bundle exec rake jobs:work
问题 #2
可以用独角兽代替吗?
感谢您的宝贵时间和建议。
干杯
【问题讨论】:
标签: ruby-on-rails-3 heroku puma