nginx 代理到 Apache/PHP 速度很慢

nginx 代理到 Apache/PHP 速度很慢

我的设置:

  • nginx 正在监听端口 80 并作为反向代理工作(并直接发送静态文件)
  • Apache 2 正在监听端口 8080
  • PHP 在 Apache 2 中运行
  • 全部在一台服务器上运行(无内部网络延迟)

我的问题:

静态文件现在非常快,但是通过代理的一切都需要花费很多额外的时间。

一个例子是“边输入边搜索”标签建议框。当我通过端口 8080 直接连接到 Apache 时,一切都很顺利,服务器响应很快(约 50 毫秒)。当我通过端口 80(nginx -> Apache)使用“正常路径”时,每个请求大约需要 15 倍的时间(约 750 毫秒)。

我期望一些时间更长。目前请求不会以任何方式离开服务器,那么为什么它们需要这么多时间来处理?我如何让它们更快?

有什么方法可以在 nginx 和 Apache 之间使用持久连接吗?

有没有什么方法可以衡量一下这额外的 0.7 秒究竟在哪里增加的呢?

主要兴趣:我能否查明这个时间是来自 nginx 中的内部处理(例如主机名表查找)还是来自与 Apache 的连接。nginx 是否正在等待打开套接字 - 或者这里发生了什么?

答案1

好吧,我终于找到了我的问题——而且看起来好像是我自己造成了这个问题:

我配置错误限制请求区域使我的服务器速度变得比预期的慢。

相关内容