在socket.emit中使用setInterval

时间:2016-08-04 06:36:48

标签: javascript socket.io

您好,我想问一下我是否在正确的方向。使用setInterval更新数据库中的记录并在数据库中获取新添加的记录。我的问题是这不会导致性能问题吗?

setInterval(function () {

        socket.emit('drawmarker', {devid: thearray, logid: logid});

}, 1000);

setInterval(function () {

    socket.emit('displayupdate', {devid: thearray, logid: logid});

}, 1000);

setInterval(function () {

    socket.emit('getmessages', {logid: logid});

}, 1000);

setInterval(function () {

    socket.emit('requestconvert');

}, 3000);

1 个答案:

答案 0 :(得分:0)

为什么不把它们全部放在同一个区间? 您还可以添加一个简单的计数器,并将它们全部放在相同的1000毫秒间隔内,只需每隔3000毫秒发送一次“requestconvert”

setInterval(function () {

socket.emit('drawmarker', {devid: thearray, logid: logid});

socket.emit('displayupdate', {devid: thearray, logid: logid});

socket.emit('getmessages', {logid: logid});

}, 1000);

setInterval(function () {

socket.emit('requestconvert');

}, 3000);

编辑:您对性能问题的担忧,很大程度上取决于他们的实际行为。