推送Web应用程序的通知

时间:2014-04-07 08:18:45

标签: javascript php ajax web-applications web

在Web应用程序中使用推送通知的有效方法是什么?

我有一个Web应用程序,我希望通过推送通知为每个特定用户动态刷新它,而不是定期从服务器中提取数据。

1 个答案:

答案 0 :(得分:2)

最好的一个不存在,但你有一些选择来完成这个。

Web套接字(IMO,我推荐这种方法)

第一个也是效率最高的是在HTML5页面中使用Web套接字。您可以使用PHP中的库来完成这项工作,或者您可以使用带有Socket.io或类似功能的Node.js服务器来处理您网站的前端(我在网上产品中看到了很多)。

注意:当使用Web套接字时,客户端和服务器将相互发送一个TTL(生存时间)消息,这是一个非常小的消息,带有小标题只是为了保持连接的开放和活动。 / p>

短轮询

第二个是短轮询,在这里你每隔X秒或几分钟向服务器发出一个ajax请求(取决于你想要刷新数据的频率)。 注意:效率最低,因为您要向服务器打开大量请求以检查是否有新数据

长轮询

第三个是长轮询,这个就像短轮询一样,而是你保持一个连接打开更长的时间,并在有数据发送到客户端时从服务器得到响应。这样消耗较少,但您仍然可以在客户端和服务器之间保持永久连接。