Heim >Backend-Entwicklung >PHP-Tutorial >实时消息推送怎么做?

实时消息推送怎么做?

WBOY
WBOYOriginal
2016-06-06 20:09:421778Durchsuche

求问比如 segmentfault 的这个消息推送实时消息推送怎么做?

有消息来的时候小铃铛会有一个红色的数字,点开之后又新的消息,这个不用刷新页面就能实现,而且也不用ajax,该怎么做?

回复内容:

求问比如 segmentfault 的这个消息推送实时消息推送怎么做?

有消息来的时候小铃铛会有一个红色的数字,点开之后又新的消息,这个不用刷新页面就能实现,而且也不用ajax,该怎么做?

实时消息推送怎么做?

websocket

用fiddle看了一下,应该是用到了socket.io
附教程一篇使用Node.js+Socket.IO搭建WebSocket实时应用

应该是用的websocket,可以看一下workerman框架,实践一下websocket.
workerman

如果考虑到php, 楼上正解。
另外推荐 pomelo, 分布式、觉得也比较稳定,就是曲线比较陡。

关于WEB推送刚好我最近在做,可以给你一些方案:

一般来说,如果对于消息的实时性要求不是特别高,比如10秒中检查一次消息也可以接受,这时可以使用最简单的 polling 方案,即每隔一定时间向服务器请求一次接口来获取是否有未读消息,这种方式实现起来相当简单,而且对浏览器的兼容性很好。

还有一种被广泛使用的方式,就是楼上所说的,使用 webSocket,前面已经说很多了,我就不多讲了。

HTML5有一个新的推送标准,SSE(Server-Side Event),可以用来做实时推送,相对websocket来说实现起来更简单,但对浏览器的支持不是太好(现代浏览器都可以支持,但IE和Edge全系不支持)。

实时消息推送怎么做?

目前成熟的服务器推送的方案是jsonp

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn