【发布时间】:2013-11-20 18:05:06
【问题描述】:
**你可能想先阅读下面的更新**
我正在构建一个 Drupal 站点。我已经用 nginx 和 varnish 配置了它。我什至没有在服务器上安装 apache。
我正在努力提高性能。一个主要的问题是第一个请求(在单个页面加载中;例如,按 F5 后的第一个请求)比其他请求花费更多的时间。
回复:
Accept-Ranges bytes
Age 0
Cache-Control no-cache, must-revalidate, post-check=0, pre-check=0
Connection keep-alive
Content-Encoding gzip
Content-Language en
Content-Length 7541
Content-Type text/html; charset=utf-8
Date Fri, 08 Nov 2013 15:55:07 GMT
Etag "1383926106"
Expires Sun, 19 Nov 1978 05:00:00 GMT
Last-Modified Fri, 08 Nov 2013 15:55:06 +0000
Server nginx/1.1.19
Via 1.1 varnish
X-Powered-By PHP/5.3.10-1ubuntu3.8
X-Varnish 1319371045
请求:
Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding gzip, deflate
Accept-Language nl,en-us;q=0.7,en;q=0.3
Connection keep-alive
Cookie has_js=1
Host _____________________ (removed by me)
Referer _____________________ (removed by me)
User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:25.0) Gecko/20100101 Firefox/25.0
这是 firebug 中的时间线(翻译自荷兰语)
Block: 123ms
Dns, Connect, Send: 0
Wait: 1.29s
Receive: 22ms
- 根据响应标头,我是否可以断定该页面确实是从缓存中提供的?
- 为什么需要这么长时间?有没有办法分解 nginx 和 varnish 为页面提供服务所采取的任何步骤?
更新:
打开nginx的调试日志后发现:
....
2013/11/08 17:23:05 [debug] 4992#0: *3786 http run request: "/index.php?"
2013/11/08 17:23:05 [debug] 4992#0: *3786 http upstream check client, write event:1, "/index.php"
2013/11/08 17:23:05 [debug] 4992#0: *3786 http upstream recv(): -1 (11: Resource temporarily unavailable)
2013/11/08 17:23:06 [debug] 4992#0: *3786 post event 00000000021FFD78
2013/11/08 17:23:06 [debug] 4992#0: *3786 post event 000000000221CEB8
....
第二次更改应该不是巧合(所以我假设“资源暂时不可用”需要一秒钟)。
【问题讨论】:
-
感谢您没有发布您的 Nginx 配置;我一直想尝试我的心灵感应技能,这给了我一个很好的机会。 NNNG NNNG NNNNNNNNNNNHGGGGHHHG 不,这不好。我读不懂你的心思。如果您希望有人帮助您,您可能必须实际发布您的配置。
标签: performance drupal ubuntu nginx varnish