在Apache上使用PHP进行长轮询

Jer*_*ris 8 php apache long-polling

希望我能够很好地解释这一点.我正在创建一个PHP库,以面向对象的方式通过PHP处理ajax请求.我目前正在考虑一种实施长轮询解决方案的好方法,但我很好奇.

Apache无法处理多个连接保持打开状态.每个请求的线程模型使得Apache对于长轮询非常低效.使用诸如nginx和lighttpd之类的服务器可以更好地处理这些线程,因此在库中,我计划实现针对单个函数调用中可用的特定服务器优化的不同函数.对于Apache,它恰好占据了PHP应用程序的巨大市场份额,我需要一个更好的解决方案.

有没有办法将传入的请求置于保持/暂停状态并继续处理其他请求,直到我准备重新激活它为止?

我不确定这是否有意义,或者我是否在正确的轨道上.SO建议在Apache服务器上使用PHP进行长轮询的可能解决方案是什么?

rid*_*rid 2

这听起来像是延续。你绝对不能在 PHP 中以任何优雅的方式做到这一点。如果您想这样做,最好的机会是保存当前状态,并以这样的方式编写代码,以便您可以在加载状态时从中断处继续。