我想通知用户有人向她发送了一条消息(例如)而不刷新页面。我正在使用 php 和 jquery(AJAX) 来处理这个问题。我打算使用 setTimeout() 对其进行编码;在 javascript 上检索数据库上的数据而不刷新当前页面。但是,我认为问题是,如果我将来有更多用户,它会削弱搜索并导致延迟。
你有什么解决办法吗?
实现WebSockets。有这个jQuery 插件允许您使用 Websockets,同时为不支持的浏览器优雅地降级。在 PHP 方面,有一个似乎是 PHP WS 服务器使用最广泛的类
Websocket 解决了这个问题,但是增加了几个新的问题(单独的端口,ws-server 重启)。Twitter 每 60 秒发出一次 GET 请求:
GET https://twitter.com/i/notifications?oldest_unread_id=0