小编use*_*686的帖子

客户端JavaScript中多个Firebase连接的资源限制

假设我想制作一个完全在浏览器中运行的大型,实时,2d开放世界风格的游戏,我想使用Firebase来完成它.

我们也要忽略安全方面的问题; 我稍后会问.(=

玩家从(0,0)开始,可以向任何方向移动.我在空间上对世界进行散列,以便任何给定的x,y坐标成为我可用于生成Firebase ref的单个(或嵌套)键:

var getKey = function(x, y) {
  return Math.floor(x / 100) + ':' + Math.floor(y / 100);
}

var key = getKey(currX, currY);

var ref = new Firebase('https://whatever.firebaseio.com/world/' + key);
// ...
Run Code Online (Sandbox Code Playgroud)

这样的事情.当玩家在世界各地移动时,我非常确定我需要保留4到9个参考值,以使Firebase保持活跃状态​​以进行更改.这可能会增加一倍或三倍,这取决于我如何构建数据:是否存储在world/树中或其他地方的其他玩家?那种事.

我不希望播放器的浏览器获得它不关心的更新.当玩家四处移动时,我想"过期"旧的参考,因此浏览器不会花费资源聊聊世界上遥远的片段.

是否足以让ref实例超出范围并获得GCed?或者还有什么我必须做的事情来通知裁判我不想再使用它了吗?

我想到的另一件事并不是担心有多少参考,而是追踪on回调.当玩家离开世界特定区域的范围时,我可以进行off任何回调.这足以让我的裁判停止与Firebase交谈吗?

javascript web-applications firebase

3
推荐指数
1
解决办法
885
查看次数

如何在 Windows 命令 shell 中初始化变量并回显它

如何在windows命令shell中初始化一个变量?我试过

(
var $a=1
echo $a
)
Run Code Online (Sandbox Code Playgroud)

并得到一个错误

'var' is not recognized as an internal or external command, operable program or batch file.
Run Code Online (Sandbox Code Playgroud)

windows cmd windows-shell

0
推荐指数
1
解决办法
1万
查看次数