我有一个rubyonrails应用程序在开发模式下变得非常慢。生产中的一切都很好,但即使是简单的“hello world”也需要秒。我检查了会话商店以及我在网上找到的每一个可能的原因,但我没有发现问题。我错过了一些常识吗? “在1657ms完成(查看:226,DB:39)”
答案 0 :(得分:6)
开发肯定是更慢,因为它会重新加载所有组件。生产模式仅在服务器启动时加载组件。
如果您发现您的应用在生产模式下仍然太慢,那么您可以开始寻找瓶颈。您可以从优化数据库查询开始,包括:include和indicies。您还可以尝试系统地删除宝石和插件,以找到减慢代码速度的部分。
答案 1 :(得分:1)
如果您正在运行webrick,通常就是这种情况,它的速度太慢会使眼睛流血。
尝试在dev
中安装mongrel gem install mongrel
答案 2 :(得分:0)
创建一个新的应用程序,看看它是否也很慢 - 这将指向您的服务器堆栈(apache,mongrel,passenger等)而不是您的应用程序。如果它只是你的应用程序然后google rails profiling - 并选择一个用于分析应用程序的选项之一。
答案 3 :(得分:0)
WEBrick默认在连接IP时进行反向DNS查找。换句话说,它试图查看您的IP地址是否与域名相关联。这是不必要的,耗时太长,所以你可以禁用它。
打开文件" l / ruby / lib / ruby / 1.9.1 / webrick / config.rb" 并找到"的行: DoNotReverseLookup =>零"
将nil更改为 true 。
享受!