AJAX轮询与WebSockets移动性能

时间:2011-06-08 19:12:14

标签: ajax django websocket long-polling

我目前正在Django开发一个网站,我想实现某种准实时更新系统。

由于此站点适用于移动设备,因此我想知道定期轮询服务器以进行更改(例如,每5秒)和使用某种Websocket实现ala http://codysoyland.com/2011/feb/6/evented-django-part-one-socketio-and-gevent/之间的性能比较。

关于电池寿命,差异可以忽略不计吗?代码方面,似乎AJAX实现也会更简单。

2 个答案:

答案 0 :(得分:2)

答案是“它取决于”。如果您的目标是使用已知良好的websockets实现的移动设备,那么就这样做。目前,这可能只是iOS4.2或更高版本的iPhone / iPad 可能具有良好的实现。

对于其他人来说,无论如何你都会进行民意调查,所以我会说沿着这条路走下去。

我已经完成了几项近乎实时的服务(<10秒延迟),使用轮询工作正常。我不会将它用于聊天引擎,但对于大多数其他一切都没问题。

答案 1 :(得分:1)

电池明智我认为两者都不会产生很大的影响。我会使用socket.io,因为你只使用socket.io并且它将尝试使用websockets,如果浏览器不支持它们,则回退到ajax请求