gpt4 book ai didi

performance - 诊断两个 Web 服务器之间的慢速页面 'Waiting time'

转载 作者:行者123 更新时间:2023-12-03 16:58:47 27 4
gpt4 key购买 nike

我们刚刚安装/配置了一个新的 Web 服务器来替换我们过时的服务器。让我们称旧服务器“server1”+新服务器“server2”。它们都运行相同的网站,使用相同的代码,但旧服务器提供网页的速度仍然比新服务器快得多。首先,这是有关服务器规范的更多详细信息:
服务器 1 配置:

Linux server1 2.6.32-25-generic-pae #45-Ubuntu SMP Sat Oct 16 21:01:33 UTC 2010 i686 GNU/Linux

MemTotal: 6180036 kB

8 cores Intel(R) Xeon(R) CPU E5620 @ 2.40GHz

Server version: Apache/2.2.14 (Ubuntu)


服务器 2 配置:

Linux server2 3.2.0-23-generic #36-Ubuntu SMP Tue Apr 10 20:39:51 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

MemTotal: 24682544 kB

16 cores Intel(R) Xeon(R) CPU E5620 @ 2.40GHz

Server version: Apache/2.2.22 (Ubuntu)


主要区别在于 server2 具有 64 位操作系统架构,并且还具有更多的 RAM 和 CPU 能力。
我不了解你,但我希望 server2 能够击败 server1。但是,在提供网页时情况并非如此。
两个服务器页面加载的开发人员工具输出:
Server1
等待时间:314ms
Server2
等待时间:5.45s
如您所见,两台机器发出完全相同的文件请求,但 server1 仍然占主导地位。
我已经尝试研究可能影响“等待时间”的几个因素,但我很难缩小花费时间的范围。
我查看了 Apache2 配置,两台机器上都应用了完全相同的指令和模块扩展... 区分代码并验证它是相同的...网络/ping/nslookup 时间几乎相同。
谁能解释一下“等待时间”是如何计算的,以及可以用来缩小问题范围的任何做法?
非常感谢,
ns

最佳答案

是的,我最终确实找到了它的底部。尽管您的问题的解决方案可能与我的非常不同。 “等待时间”是一个相当宽泛的术语,可以与在服务器端执行的任何事情相关。

在我的例子中,我不得不以一种相当痛苦的方式手动调试代码,打印负载 microtime()围绕代码的语句来确定时间丢失的地方。

原来有一些遗留代码有 exec/sbin/route .

在最初的 32 位系统上,这完全可以立即执行,但在 64 位机器上,它需要超过 5 秒:

$ time /sbin/route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.10.10.1 0.0.0.0 UG 100 0 0 eth0

real 0m5.007s
user 0m0.000s
sys 0m0.004s

不确定/sbin/route 是否通常在 64 位机器上执行较慢(如果是这样,很高兴知道为什么),或者是否应该归咎于较新的操作系统版本。

关于performance - 诊断两个 Web 服务器之间的慢速页面 'Waiting time',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10834103/

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