如果我想要更快的速度,是否 bad/pointless 设置 Nginx/Unicorn/Rails 本地开发环境?
Is it bad/pointless to setup a Nginx/Unicorn/Rails local dev environment if I want faster speed?
所以我目前 运行 在生产箱上进行 Nginx/Unicorn/Rails 设置。但是,我总是通过以下方式为开发目的进行本地部署:
rails s
我注意到这不是最快的(或者比生产箱慢得多,是的,我认识到生产箱更强大),所以我决定尝试 运行 生产在我的本地设置上设置。这意味着设置 nginx、uncorn、多个 worker 等
我看到的是速度稍快(这可能是安慰剂)。我还意识到 unicorn 的好处来自能够处理多个请求(这在我的本地设置中是荒谬的,因为我是唯一的请求)。
总的来说,如果我想加速我的本地盒子,什么是好的本地设置?我在这方面相对缺乏经验,所以任何想法都会受到赞赏。另外,如果没有更好的方法,我也可以接受。无论如何,rails 的好处超过了有时速度慢的问题。
Rails 在开发环境中速度较慢的一个重要原因是它会根据每个请求重新加载所有模型、控制器等。一切都在生产中预加载。也就是说,webrick 非常慢,我发现在开发中使用 thin
更快。
要使用 thin,只需将它添加到您的 Gemfile 中:
group :development do
gem 'thin'
end
当您启动服务器时,它应该会告诉您它正在使用 thin。如果没有,您可能必须手动指定它:
rails server thin
所以我目前 运行 在生产箱上进行 Nginx/Unicorn/Rails 设置。但是,我总是通过以下方式为开发目的进行本地部署:
rails s
我注意到这不是最快的(或者比生产箱慢得多,是的,我认识到生产箱更强大),所以我决定尝试 运行 生产在我的本地设置上设置。这意味着设置 nginx、uncorn、多个 worker 等
我看到的是速度稍快(这可能是安慰剂)。我还意识到 unicorn 的好处来自能够处理多个请求(这在我的本地设置中是荒谬的,因为我是唯一的请求)。
总的来说,如果我想加速我的本地盒子,什么是好的本地设置?我在这方面相对缺乏经验,所以任何想法都会受到赞赏。另外,如果没有更好的方法,我也可以接受。无论如何,rails 的好处超过了有时速度慢的问题。
Rails 在开发环境中速度较慢的一个重要原因是它会根据每个请求重新加载所有模型、控制器等。一切都在生产中预加载。也就是说,webrick 非常慢,我发现在开发中使用 thin
更快。
要使用 thin,只需将它添加到您的 Gemfile 中:
group :development do
gem 'thin'
end
当您启动服务器时,它应该会告诉您它正在使用 thin。如果没有,您可能必须手动指定它:
rails server thin