gpt4 book ai didi

ruby-on-rails-3 - 乘客在启动时和闲置几秒钟后变慢

转载 作者:行者123 更新时间:2023-12-04 21:43:02 25 4
gpt4 key购买 nike

我目前面临一个问题,Passenger (4.0.18) 与一个简单的 Rails 4.0.0 应用程序相结合。
问题是,启动 apache 后,第一个请求非常慢(通常为 30.x 秒)。以下请求非常快,但如果应用程序空闲超过 20 秒,同样的情况会再次发生。

现在,这个问题一般已经在这里讨论过几次了,当然我已经调整了 apache 配置:

 PassengerSpawnMethod smart
PassengerPoolIdleTime 1000
RailsAppSpawnerIdleTime 0
PassengerMaxRequests 1000
PassengerMaxPreloaderIdleTime 0

但这根本没有帮助。如果我检查乘客状态,它会告诉我:
 Version : 4.0.18
Date : 2014-01-31 13:06:59 +0100
Instance: 20601
----------- General information -----------
Max pool size : 6
Processes : 1
Requests in top-level queue : 0

有趣的是,当我在执行请求时对乘客状态进行“观察”时,这里并没有真正改变。 (尤其不是请求行)。

我已经摆弄过 tcpdump,所有请求都及时到达,因此没有可见的网络延迟。
我还启用了 apache 扩展日志记录(增加了请求时间)——这很有趣,假设一个正常的请求需要大约 200 毫秒,那么其中一个慢请求正好需要 30.2 秒。

知道这会导致什么吗?

Apache 是 2.2.15。 (redhat 版本,带有向后移植的安全补丁...:))

提前致谢,
比约恩

最佳答案

使用PassengerPreStart:http://www.modrails.com/documentation/Users%20guide%20Apache.html#PassengerPreStart .该文档部分还解释了为什么您会遇到所观察到的行为。

关于ruby-on-rails-3 - 乘客在启动时和闲置几秒钟后变慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21479969/

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