返回介绍

comet_server.php

发布于 2020-04-07 10:24:08 字数 465 浏览 972 评论 0 收藏 0

Comet是使用Http协议维持长连接,达到服务器推送的目的。Swoole框架提供了一套兼容WebSocket和Http 2种协议的CometServer。

WebSocket

如果客户端浏览器支持WebSocket,自动使用WebSocket作为通信协议。

Comet

如果客户端浏览器是IE系列,不支持WebSocket,则使用Comet方案。Comet会创建2个http请求。

  • /pull 此请求发出后,会等待服务器推送数据,如果在50s内未有推送信息,服务器会返回Timeout。然后客户端再次发起一次/pull/请求。
  • /push 此请求用于想服务器发送数据

pull 请求由于是启用了Http KeepAlive,实际上Socket是长连接的,不存在多次connect/close的问题,性能很高。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文