我试过读一些文章,但我还不太清楚这些概念.
有没有人愿意试着给我解释一下这些技术是什么:
- 长时间轮询
- 服务器发送事件
- 网袋
- 彗星
我每次遇到的一件事是,服务器保持连接打开,并将数据推送到客户端.连接是如何保持打开的,客户端是如何获取推送的数据的?(客户如何使用数据,也许一些代码可能会有所帮助?)
现在,我应该在实时应用程序中使用哪一个呢.我已经听说了很多关于WebSocket(带有socket.io[node.js库])的事情,但为什么不使用PHP呢?
我试过读一些文章,但我还不太清楚这些概念.
有没有人愿意试着给我解释一下这些技术是什么:
我每次遇到的一件事是,服务器保持连接打开,并将数据推送到客户端.连接是如何保持打开的,客户端是如何获取推送的数据的?(客户如何使用数据,也许一些代码可能会有所帮助?)
现在,我应该在实时应用程序中使用哪一个呢.我已经听说了很多关于WebSocket(带有socket.io[node.js库])的事情,但为什么不使用PHP呢?
In the examples below the client is the browser and the server is the webserver hosting the website.
在了解这些技术之前,您必须先了解classic个HTTP web流量.
当有新信息可用时,服务器会向客户端发送一个事件.
现在,当有新数据(两端)可用时,服务器和客户端可以互相发送消息.
https://i.stack.imgur.com/CgDlc.png"ALT="HTML5WebSockets">
Comet是HTML5之前的一系列技术的集合,它们使用流媒体和长轮询来实现实时apply.阅读更多关于wikipedia或this的文章.
现在,我应该在实时应用程序中使用哪一个(我需要这样做)
您可以在WebSockets中使用PHP,请查看Ratchet.