我正在开发一个节奏相对较快的游戏(Flash/Apache Mina Server 后端),并且在获得当前设置将使用的带宽类型的准确基准时遇到了一些困难。
我的问题是:如何获得测试所需带宽的准确基准?我现在在做什么不会考虑任何开销?
关于我正在做的消息发送/接收方法
[out/in]Bandwidth+= message.toString().getBytes().length;
然后我每 250 毫秒打印一次当前值(因为这是当前完成“世界”更新的频率)。
有 10 个“怪物”随机移动,1 个玩家随机移动,我得到了这个输出..(这里是 1 秒窗口)
In bandwidth: 1647, Outgoing: 35378
In bandwidth: 1658, Outgoing: 35585
In bandwidth: 1669, Outgoing: 35792
In bandwidth: 1680, Outgoing: 35999
因此,严格按照正在传递的消息(传出)的大小进行操作,每人屏幕上每个不断移动的项目大约为 621 字节/秒或 (621/10) 62.1 字节/秒。这似乎有点低,一个良好的高速连接可以以这个“速率”每秒处理 1000 多个对象更新没问题。