websocket - javascript大量推送数据如何快速处理?
迷茫
迷茫 2017-04-11 12:57:33
[JavaScript讨论组]

后端实现了websocket主动推送,现在想在网页上显示推送的数据,但是由于推送的数据量特别庞大,自己的处理比较缓慢,不但造成了数据推送的延迟,页面也特别卡顿,进行点击button等组件的操作也特别卡顿。我在websocket的on_message下是这样处理的:

var _on_message = function(evt) {
    try {
        var evt_obj = JSON.parse(evt.data);
        if (evt_obj['type'] == 'msg') {
            var data = evt_obj['data'];

            // 屏幕被分成了四块 ,分别推送到四块上;
            // 这里分成四块也是个大问题?
            for (var i = 0; i < _chat_list.length; i++) {
                // 这里也许还有一些正则匹配
                panel_dict[ch].add_msg(data);
            }

        } else {
            console.log("recv msg: ", evt_obj);
        }

    } catch (err) {
        console.error(err);
    }
};

我想这着把数据接收到一个list,在使用setInterval来慢慢处理显示这些数据,但是这样的话数据还是不实时的,有的数据到了但是过了一段时间才显示。头疼ing

本人前端菜鸟,不知道有什么好的处理办法或者解决方案呢?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回复(0)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号