【问题标题】:Pusher slows down ajax request with > 200msPusher 用 > 200ms 减慢 ajax 请求
【发布时间】:2013-11-09 15:35:07
【问题描述】:

我在使用 Pusher 时遇到了一些问题。通常一个 AJAX 请求到我的服务器大约需要 100 毫秒,但是当我在 Pusher 中运行触发功能(告诉 Pusher 推送到所有连接的客户端)时,请求会减慢大约 200-300 毫秒。

$pusher->trigger('presence-my-channel', 'my-event', $data);

这与它是一个存在渠道有关吗?

有没有办法解决这个问题?我可以分别在本地做什么服务器端?我可以更改一些 AJAX 设置吗? (我不需要返回对我的 AJAX 请求的响应。)

有时请求甚至需要 500 毫秒,如果其中三个几乎同时触发,事情就会变慢。

有什么可以做的吗?

【问题讨论】:

    标签: javascript php jquery ajax pusher


    【解决方案1】:

    如果您不关心知道对 Pusher Web API 的调用结果,而只是希望它尽快完成,那么您可以考虑进行异步调用。已提出拉取请求以将其添加到 pusher-php-server 库中: https://github.com/pusher/pusher-php-server/pull/11

    我建议在此拉取请求中添加 +1,以便编写测试,将其合并到 master 中,然后标记发布。

    您的另一个选择是将消息推送到消息队列,而不是直接调用 Pusher Web API。然后,您可以使用另一个守护程序服务来读取消息队列并向 Pusher 发出请求。这将消除向 Pusher 发出 HTTP 请求所造成的延迟。

    【讨论】:

    • 面临同样的问题,但是将作业放在后台队列中会失去“实时”更新的全部魅力:/
    • 我也面临同样的问题,我希望 Pusher 比这更快,这里也是 500 毫秒。Pusher 没有留下深刻的印象。我为了我的需要放弃了它们。这些天,世界的运行速度超过 500 毫秒……问问谷歌就知道了。我说 Pusher 每次触发需要达到 80ms MAX!
    • @hamish 绝对是 Pusher 支持人员之一
    猜你喜欢
    • 2012-10-01
    • 2013-08-26
    • 2012-05-28
    • 2015-09-21
    • 2012-09-04
    • 2012-05-30
    • 1970-01-01
    • 2014-11-12
    • 1970-01-01
    相关资源
    最近更新 更多