我正在为我的网站开发一个私有的混乱功能, 有没有办法从服务器获取推送通知,用户已收到新消息?
我所知道的唯一技术是不断通过ajax轮询服务器以查看是否有新消息,并在需要时重新加载信使窗口。
感谢任何反馈!
UPD:到目前为止,已经确定了以下方向:
答案 0 :(得分:5)
您可能希望了解XMPP和BOSH。非常彗星和ejabberd结合nginx可以在一个非常小的盒子上保持1000个连接。
看看我的一个项目www.vooices.us,看看我们在XMPP和BOSH上做了些什么。
http://github.com/ssoper/jquery-bosh/tree/master JQueryBosh - 通过HTTP快速轻松地访问XMPP
设置和安装相对容易。
保罗。
答案 1 :(得分:0)
服务器无法将信息推送到客户端,但您始终可以使用Comet。是的,你要轮询服务器,但不是经常。你要保持每个连接打开大约30秒(这是我经常看到的间隔),然后在需要时打开一个新连接。
编辑: Adobe Flash允许与服务器的持久连接,因此您可以使用它。有关详细信息,请参阅this article。
答案 2 :(得分:0)
听起来像Comet可能链接到一些有用的东西(查看谷歌的GTalk):
答案 3 :(得分:0)
有很多好的图书馆可以帮助你做到这一点
XMPP - BOSH是我在我的网站上使用的一个很好的组合
XMPP服务器
Ejabberd,Openfire我使用ejabberd
你可以使用Strophe和Ejabberd在javascript中捕获通知。如果您想从代码发送通知
有像JAXL和XMPPHP这样的库可以让你这样做,但这是在PHP中。