我正在尝试制作一个类似于 Facebook 的半实时通知系统,为此我期待使用长轮询而不是盲目轮询(每 N 秒轮询一次)。
是的,我没有使用 Apache,我在 Nginx 上可以处理这种类型的轮询。
现在出现了一个问题,我阅读的有关长轮询主题的所有教程都显示了示例,其中如果没有返回数据然后再次轮询,ajax 请求会在 30-50 秒内超时,这对我来说毫无意义,因为以前我曾经每 30 秒轮询一次服务器以检查通知,长轮询如何使情况变得更好?它仍将每 30 - 50 秒重新连接一次。
出于这个原因,我认为将 max_execution_time 从默认的 60 更改为 300 或 400 可能是一个选项,然后在超时和重新连接之前等待至少 5 分钟的请求进行轮询。
我可以期待这样做有什么不好的副作用吗?这种方法有缺陷吗?还是有更好的方法?
谢谢你。