Java ApacheMina总带宽基准测试

Java ApacheMina总带宽基准测试,java,networking,tcp,bandwidth,apache-mina,Java,Networking,Tcp,Bandwidth,Apache Mina,我正在开发一款节奏相对较快的游戏(Flash/ApacheMina服务器后端),我很难获得当前设置将使用的带宽类型的准确基准 我的问题是:如何获得测试所需带宽的准确基准?我现在所做的不会考虑任何开销 关于我正在执行的消息发送/接收方法 [out/in]Bandwidth+= message.toString().getBytes().length; 然后我每隔250毫秒打印一次当前值(因为这是当前“世界”更新的频率) 10个“怪物”随机移动,1个玩家随机移动,我得到了这个输出。。(此处为第二个

我正在开发一款节奏相对较快的游戏(Flash/ApacheMina服务器后端),我很难获得当前设置将使用的带宽类型的准确基准

我的问题是:如何获得测试所需带宽的准确基准?我现在所做的不会考虑任何开销

关于我正在执行的消息发送/接收方法

[out/in]Bandwidth+= message.toString().getBytes().length;
然后我每隔250毫秒打印一次当前值(因为这是当前“世界”更新的频率)

10个“怪物”随机移动,1个玩家随机移动,我得到了这个输出。。(此处为第二个窗口)


因此,严格按照正在传递的消息(传出)的大小来操作,即每个人在屏幕上不断移动的项目大约为621字节/秒或(621/10)62.1字节/秒。这似乎有点低,一个好的高速连接可以以这种“速率”每秒处理1000多个对象更新。没问题。

这里肯定有点可疑。根据他们提供的性能测试:mina能够在大约10个连接上每秒处理20K+405字节的请求,比您看到的要多得多

我的猜测是,这里发生了某种导致延迟的延迟时间问题。我会寻求数据包跟踪应用程序(如wireshark)的帮助,看看您在代码中的观察结果是否与原始网络数据吻合。如果可能的话,我也会尝试用更多的数据“淹没”服务器端——这可能会提供一些关于问题所在的见解


我希望这会有帮助,祝你好运。

这里肯定有股腥味。根据他们提供的性能测试:mina能够在大约10个连接上每秒处理20K+405字节的请求,比您看到的要多得多

我的猜测是,这里发生了某种导致延迟的延迟时间问题。我会寻求数据包跟踪应用程序(如wireshark)的帮助,看看您在代码中的观察结果是否与原始网络数据吻合。如果可能的话,我也会尝试用更多的数据“淹没”服务器端——这可能会提供一些关于问题所在的见解

我希望这有帮助,祝你好运

In bandwidth: 1647, Outgoing: 35378
In bandwidth: 1658, Outgoing: 35585
In bandwidth: 1669, Outgoing: 35792
In bandwidth: 1680, Outgoing: 35999