Jquery 当长时间轮询时,为什么我的其他请求需要这么长时间?

Jquery 当长时间轮询时,为什么我的其他请求需要这么长时间?,jquery,ajax,comet,polling,Jquery,Ajax,Comet,Polling,客户端发出2个并发请求。(一个需要60秒——长轮询)另一个不需要长轮询——应该马上返回。当我不做长时间的投票时,它会立即返回。但是,一旦我开始对另一个线程进行长时间轮询,另一个线程将永远无法执行 Firebug显示请求正在等待10-50秒。在服务器上,我分析了从php脚本开始到返回到客户端的所有请求,结果显示每个请求只需要300毫秒或更短的时间 这个问题大约是在我开始进行长轮询(以及其他XHR请求)的同时出现的。我对这两个请求都使用jquery 服务器显示它的负载非常轻。CPU和内存不足2%。在

客户端发出2个并发请求。(一个需要60秒——长轮询)另一个不需要长轮询——应该马上返回。当我不做长时间的投票时,它会立即返回。但是,一旦我开始对另一个线程进行长时间轮询,另一个线程将永远无法执行

Firebug显示请求正在等待10-50秒。在服务器上,我分析了从php脚本开始到返回到客户端的所有请求,结果显示每个请求只需要300毫秒或更短的时间

这个问题大约是在我开始进行长轮询(以及其他XHR请求)的同时出现的。我对这两个请求都使用jquery

服务器显示它的负载非常轻。CPU和内存不足2%。在15个进程池中运行8个进程。(即使我运行更多的ajax请求,它似乎与数字8相差不大)。我想每个进程可以同时运行多个ajax线程

我确保在所有进程执行完毕后立即退出它们。如果在prstat-J下面还列出了7个未使用的进程,我看不出进程池是如何耗尽的。
此外,该问题在某种程度上是间歇性发生的。Firefox应该能够处理2个并发ajax请求。我不明白问题出在哪里。

我在firefox和两个jsonp请求上也有同样的问题,一个长轮询。问题在于,jsonp基本上只是获取javascript的脚本标记,firefox同步加载动态插入的脚本

这就是为什么长轮询请求必须在第二个开始加载之前完成


如果您的案例不是jsonp,我无法提供任何帮助。

我在firefox上遇到了同样的问题,两个jsonp请求,一个长轮询。问题在于,jsonp基本上只是获取javascript的脚本标记,firefox同步加载动态插入的脚本

这就是为什么长轮询请求必须在第二个开始加载之前完成


如果您的案例不是jsonp,我无法提供任何帮助。

我认为在询问编程问题时查看代码比不查看代码要好:)如果在setTimeout(longpoll,100)中运行长轮询,会发生什么情况?我认为在询问编程问题时查看代码比不查看代码要好:)如果在setTimeout(longpoll,100)中运行长轮询,会发生什么情况?