Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在通过WebSocket发送之前拆分缓冲区是个好主意吗?_Javascript_Node.js_Websocket - Fatal编程技术网

Javascript 在通过WebSocket发送之前拆分缓冲区是个好主意吗?

Javascript 在通过WebSocket发送之前拆分缓冲区是个好主意吗?,javascript,node.js,websocket,Javascript,Node.js,Websocket,我正在开发一个完全使用javascript(服务器和客户端)的在线游戏。由于人们可以在我的游戏中定制地图/服务器,基本服务器脚本在连接时将地图文件上传到客户端的一个选项是通过WebSocket,但我还没有找到任何限制WebSocket速度的方法,这样服务器就不会在每次新用户连接和下载地图时都出现延迟 解决这个问题的一种方法是将保存地图文件的缓冲区(我使用fs.readFileSync读取地图文件,然后在收到请求之前创建一个缓冲区)拆分为多个小缓冲区,然后每秒只将其中一个上传到客户端,从而为服务器

我正在开发一个完全使用javascript(服务器和客户端)的在线游戏。由于人们可以在我的游戏中定制地图/服务器,基本服务器脚本在连接时将地图文件上传到客户端的一个选项是通过WebSocket,但我还没有找到任何限制WebSocket速度的方法,这样服务器就不会在每次新用户连接和下载地图时都出现延迟

解决这个问题的一种方法是将保存地图文件的缓冲区(我使用fs.readFileSync读取地图文件,然后在收到请求之前创建一个缓冲区)拆分为多个小缓冲区,然后每秒只将其中一个上传到客户端,从而为服务器创建一个“假”上传速度限制,理论上避免滞后和/或崩溃


我的问题是:这是个好主意吗?这会按预期工作吗?

您计划通过在代码中引入真正的延迟来解决理论上的延迟?上面的话只是一个注释而不是答案;这些话是为了让你思考。不管你如何节流,你仍然有相同的带宽消耗量。如果您想要一个能够适当扩展的可靠体系结构,请考虑通过消息传递服务向外扩展;不是手动切断你自己的节流协议。你可以