gpt4 book ai didi

ruby-on-rails - 间歇性慢速 rails 应用程序

转载 作者:可可西里 更新时间:2023-11-01 09:31:25 26 4
gpt4 key购买 nike

我在带有 SQL Server 数据库的 Windows 机器上安装了一个 Rails 应用程序,大多数时候(尽管并非总是如此)它运行得非常慢。奇怪的是,这只是在我将应用程序迁移到较新的机器后才发生——当应用程序在旧机器上运行时,它运行良好。我不熟悉处理服务器事务,那么我应该查看哪些内容来找出问题?

我试着查看日志,但它们似乎不正确。例如,我在生产模式下运行应用程序,因此查看 production.log,我看到我最后一个请求的以下内容:

   Started GET "/experiments" for 197.57.189.98 at 2011-04-07 12:14:40 -0700
Processing by ExperimentsController#index as HTML
Rendered experiments/_experiment_table.html.erb (5.0ms)
Rendered experiments/_experiment_table.html.erb (13.0ms)
Rendered experiments/_experiment_table.html.erb (3.0ms)
Rendered experiments/_experiment_table.html.erb (2.0ms)
Rendered experiments/_experiment_table.html.erb (2.0ms)
Rendered layouts/_header.html.haml (1.0ms)
Rendered experiments/index.html.erb within layouts/application (5410.5ms)
Completed 200 OK in 5671ms (Views: 500.1ms | ActiveRecord: 5162.5ms)

但实际上从我导航到“/experiments”到页面完成加载用了 40 秒。 (不过我不确定日志是否包括数据库访问时间?)

最佳答案

这件事发生在我身上。可能这里缺少的最关键的信息是您正在使用的 Web 服务器。 Rails 日志将显示处理请求所花费的时间,但不会显示 Web 服务器将请求传递到 Rails 堆栈所花费的时间。

在某些情况下,错误配置的 Web 服务器可能会导致请求超时延迟很长,例如,执行总是失败的反向 DNS 查找。

您可以通过尝试几个网络服务器来测试它。在我的例子中,Webrick 加载一个页面需要 40 秒,而 Apache 和 Thin 上的 Passenger 没有问题。我建议尝试使用备用 Web 服务器(尤其是使用 thin 和 webrick 从命令行轻松测试)以查看问题是否消失。

然后您可以调试您的网络服务器设置。

关于ruby-on-rails - 间歇性慢速 rails 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5586422/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com