jquery - NGINX/PHP-FPM : Ajax slow first request, 好的下一个

标签 jquery ajax nginx php

  • CMS 是 Elxis,它来自 Joomla (PHP) 的变体。
    • 服务器正在运行 nGinxPHP-FPM
    • 所有请求都会被记录并执行,最终,B U T!!!

当通过 URL 栏触发特定请求时,该请求会立即执行。但是,当通过 ajax(通过 jQuery)触发时,相同的请求会出现非常奇怪的行为。

即:第一个请求(在媒体管理器上)查看图片详细信息,将使用 Ajax 触发。它记录在浏览器上,但没有记录在服务器上……还没有……大约 40-50 秒后,请求出现在服务器上,然后立即得到响应。

后面所有的请求都是立即执行的,没有问题。只有第一个是粗糙的..

我有麻烦了,因为在任何地方都没有记录任何错误:一切看起来都很正常,除了第一个请求到达服务器的延迟...

它不是路由(站点已经启动并且请求已被处理),它不是解析(ip 在我的/etc/hosts 文件中)。

在蛋糕上加点樱桃,尝试在服务器上捕获数据包 (tcpdump) 不会产生任何输出:请求还没有... 在客户端也试过:没有输出 - 至少 40 秒......

这一切都在浏览器上,开发者控制台没有显示任何错误,只是一个待处理的请求。

这有没有给任何人敲响警钟?

The server:
nginx version: nginx/1.6.2
PHP 5.6.7-1 (cli)
PHP 5.6.7-1 (fpm-fcgi)

jQuery 版本 1.11
客户端:在 Firefox 39 (ubuntu) 和 Chromium 41 上试过

最佳答案

我遇到了类似的问题,我最终增加了 php-fpm 工作人员的数量。我在 www.conf (pool.d) 中使用了以下设置来解决我面临的问题。我有一个跟踪综合浏览量的分析服务器设置,API 记录综合浏览量有 15-20 秒的延迟。调整以下设置解决了我的问题,也许它可以帮助你。

pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

关于jquery - NGINX/PHP-FPM : Ajax slow first request, 好的下一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29563734/

相关文章:

javascript - 使用 html5、jquery、ajax 比较日期

javascript - 在ajax过程中加载图像无法正常工作

ruby-on-rails - 保存在主机上时,文件不会在 vagrant 中更新?

nginx - 如何使 UNIX 套接字更快?

javascript - jQuery/JS 未正确注册单选按钮值

javascript - 在 JQuery 中为 select-option-selected 编写 ID 选择器的正确语法是什么?

javascript - 使用 Jquery Grid ajax 调用绑定(bind)网格数据时参数传递为 'null'

django - 限制访问 Django/Nginx 中的静态文件

Opera 中的 JQuery.Validate 失败

javascript - 将 javascript 返回值传递给 MVC 4 中的 Controller