【问题标题】:How to troubleshoot performance difference between 2 web servers?如何解决 2 个 Web 服务器之间的性能差异?
【发布时间】:2017-10-26 14:52:15
【问题描述】:

我有一个生产虚拟 Web 服务器正在迁移到同一本地网络上的新虚拟 Web 服务器。问题是新服务器上存在性能问题。

例如,有一个页面在原始服务器上加载大约需要 1 秒,但在新服务器上加载需要超过 25 秒。我已经排除了数据库连接的问题。

两台服务器都是运行 PHP 的 Ubuntu Apache 服务器。服务器的版本略有不同,我会尽可能在这里列出。

我的主要问题是:有没有一种通用的方法来分析每台服务器上的网络请求?

类似于我分析 python 脚本或函数并分解程序的哪些部分花费最多时间的方式,我想分析一个服务器上的 Web 请求与另一台服务器的比较。

当然,对服务器的 Web 请求与在本地计算机上运行的程序根本不同,但我需要找到瓶颈所在。非常感谢任何帮助。

旧服务器配置 Ubuntu 14.04 - PHP 版本 5.5.9

新服务器配置 Ubuntu 16.04 - PHP 版本 5.6.31(也使用版本 7 进行测试,结果相同)

【问题讨论】:

    标签: php ubuntu web apache2 intranet


    【解决方案1】:

    我建议记录 PHP 脚本的执行时间。
    如果它来自 PHP 执行的某个地方,您会很容易注意到它。
    在开头做一个日志,在结尾做一个。然后您可以对两者进行压力测试并查看不同的执行时间。
    我严重怀疑问题出在 PHP 上,但如果你这样做了,你也可以看到与 PHP7 的差异,应该快 30%。

    【讨论】:

    • 我怀疑它也是 PHP 的原因,这就是为什么我想能够以某种方式分析整个请求事务。我认为这台服务器在PHP完成后传输缓慢。
    • 可能是这样,但最简单的测试是在 PHP 脚本中。它可能来自 db 实现或其他任何东西,包括 php lib。
    猜你喜欢
    • 2015-04-12
    • 2013-06-13
    • 1970-01-01
    • 2013-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-18
    相关资源
    最近更新 更多