例如,如果我得到这个网站插座:
let itemsArray = [];
function fetchData() {
itemsArray = await db.query(`SELECT * FROM Items`);
}
function emitData() {
io.sockets.in("room_foo").emit("data", JSON.stringify(itemsArray));
}
setInterval(() => fetchData(), 2500);
setInterval(() => emitData(), 5000);
基本上这意味着以下内容:每5秒流式传输到room_foo JSON数组中的所有客户端,每2,5秒获取数据
现在,这就是问题所在。当我连接到该WebSocket时,我必须等待5秒钟,直到下一个发出事件发生。
有没有办法将之前的响应缓存为X秒(在此特定情况下为5秒),并在有人连接时一直发出该响应,这样他们就不会有这样的延迟?即使新用户连接(他们没有浏览器缓存) - 我的意思是服务器缓存
温温酱
相关分类