所以我从网站的 websocket 获取我的数据(JSON 格式)。它有效,但问题是处理这些数据并不像我希望的那样高效(每一毫秒都很重要)。目前我的处理程序如下所示:
var events_channel = pusher.subscribe('changes');
const eventsQueue = [];
events_channel.bind('channel1', function(data)
{
eventsQueue.push(data);
handleNewEvent();
});
events_channel.bind('channel2', function(data)
{
eventsQueue.push(data);
handleNewEvent();
});
let processingEvent = false;
function handleNewEvent()
{
if(processingEvent){return;}
processingEvent = true;
const eventData = eventsQueue.shift();
if(!eventData){processingEvent = false; return;}
//Parse the data and do some other stuff with it
processingEvent = false;
handleNewEvent();
return;
}
我对 websocket 在服务器端的工作方式没有发言权,所以我想知道是否有办法节省额外的一两毫秒,或者这基本上是关于我可以在效率方面做些什么。