Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 对rails应用程序的第一个请求非常慢_Ruby On Rails_Ruby_Ruby On Rails 4 - Fatal编程技术网

Ruby on rails 对rails应用程序的第一个请求非常慢

Ruby on rails 对rails应用程序的第一个请求非常慢,ruby-on-rails,ruby,ruby-on-rails-4,Ruby On Rails,Ruby,Ruby On Rails 4,对我的rails应用程序的第一个请求在所有环境中都非常慢 这不应该是因为缓存/加载gem的方式不同。两小时前天气还不错,没有发生重大变化 在我注意到我的应用程序变慢的几个小时前,我做了什么: 我在production.rb(而不是development.rb)中乱搞:我在玩config.service\u static\u assets=true 我做了一系列任务来诊断为什么资产管道没有在生产中加载我的样式表和图像(比如rake资产:precompile RAILS\u ENV=product

对我的rails应用程序的第一个请求在所有环境中都非常慢

这不应该是因为缓存/加载gem的方式不同。两小时前天气还不错,没有发生重大变化

在我注意到我的应用程序变慢的几个小时前,我做了什么:

  • 我在production.rb(而不是development.rb)中乱搞:我在玩config.service\u static\u assets=true

  • 我做了一系列任务来诊断为什么资产管道没有在生产中加载我的样式表和图像(比如rake资产:precompile RAILS\u ENV=productionrake:clean资产:precompile

之后,我显然试图撤销我所做的所有更改,但由于某种原因,我的应用程序现在开发速度很慢,而以前它是完全正常的

如何解决此问题?

提前感谢:-)

更新1

当我发送对localhost:3000的请求时,仅在12-13秒后我收到: 在随机时间开始获取“/”for::1

渲染行为是正常的。第一个请求之后的所有请求都可以

更新2

在我的应用程序的旧版本中,我执行了以下操作:

  • 将旧的“应用程序”文件夹替换为新文件夹
  • 将旧的“db”文件替换为新的
  • 用新的“配置”文件替换旧的“配置”文件

一切都进行得很顺利,仍然不知道一开始出了什么问题。请注意,昨天的应用程序版本仍然运行缓慢,因此这不是与rails无关的问题。

回答

在localhost上的生产环境中,不知何故,我的资产没有提供服务(而它们在预编译后确实出现在公共目录中)

在production.rb中: config.serve\u static\u files=ENV['RAILS\u serve\u static\u files']。是否存在? 更改为: config.service\u static\u files=true甚至 config.service\u static\u assets=true。


在开发环境中,这也会减慢第一个请求的速度。显然,我也有这个问题,我发现了瓶颈。 在Windows上实现OpenSSL::Random.Random_字节时出现问题(请参见此:)。它用来做饼干

我为我的调试机器编写了这个解决方案。但这是非常危险的,不能用于生产

module OpenSSL
  module Random
    def self.random_bytes(length)
      ::Random.new.bytes(length)
    end
  end
end

你使用像git这样的版本控制软件吗?我搞砸了,我有一段时间没用了。所以这不是一个更可取的解决方案。尝试一些事情,比如-它能帮上忙吗?或者您假设请求处理在长时间后开始,而不是需要长时间?这不是特定于页面的问题,如果是第一个请求,则所有页面都会变慢。以前不是这样的。rails应用程序的日志中有什么有趣的东西吗?