Javascript 过度使用应用程序的internet连接

Javascript 过度使用应用程序的internet连接,javascript,php,android,mysql,cordova,Javascript,Php,Android,Mysql,Cordova,我正在使用PhoneGap平台创建android应用程序。我已经测试了应用程序对资源的使用情况,我注意到它使用了大量免费3G。与whatsapp等应用程序相比,使用的连接太多。 我的应用程序是聊天,我使用javascript请求刷新消息。遵循处理此问题的javascript: var refreshShout = setInterval(app.ajaxFunction, 1000); [...] ajaxFunction: function () { var shout

我正在使用PhoneGap平台创建android应用程序。我已经测试了应用程序对资源的使用情况,我注意到它使用了大量免费3G。与whatsapp等应用程序相比,使用的连接太多。 我的应用程序是聊天,我使用javascript请求刷新消息。遵循处理此问题的javascript:

var refreshShout = setInterval(app.ajaxFunction, 1000);    
[...]
ajaxFunction: function () {
        var shoutbase = $('.shoutbox');
        if (shoutbase) {
            $.get('http://edonetwork.altervista.org/Magnitude/log.php', function (data) {})
        .done(function(data) {
            $(shoutbase).html(data);
        })
        .fail(function() {
            $(shoutbase).html('<div class="alert-internet">Ops... Occorre una connessione ad internet per usufruire dell\'App!</div>');
        });
        }
}
如何限制互联网的使用?因为目前是过度的!但我认为所有聊天应用程序都会继续发出请求,但为什么性能更高呢


谢谢。

您的查询似乎总是返回30条记录。我希望该应用程序能够记住它所获得的最高ID,并且只在后续请求中请求更高的ID号。通过这种方式,只有新消息才会返回到应用程序,从而将互联网使用率降至最低。每秒刷新大量JSON将是极其糟糕的。使用WebSocket怎么样?另外,您真的确定要使用非常旧的mysql_查询界面吗?对不起,我不明白。你的意思是我检查每个请求的前一个ID是否少于下一个查询?@tadman:你能简单介绍一下WebSocket吗?对于查询,我可以轻松升级到mysqli。改变互联网成本和/或速度?WebSocket是一种持久连接,您可以通过它发送事件,而无需重复轮询。PHP中的一个示例实现是,作为比较,NodeJS在这方面做得非常出色。基本上,您与客户端保持轻量级连接,需要时可以推送数据,不需要时使用接近零的带宽。
$dati=mysql_query("   SELECT * FROM `Shoutbox` ORDER BY `Shoutbox`.`ID` DESC LIMIT 0 , 30   ");