gpt4 book ai didi

java - 对 Apache Mina 总带宽进行基准测试

转载 作者:可可西里 更新时间:2023-11-01 02:44:02 27 4
gpt4 key购买 nike

我正在开发一款节奏相对较快的游戏(Flash/Apache Mina 服务器后端),但我在获得当前设置将使用的带宽类型的准确基准时遇到了一些困难。

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

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

[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 多个对象更新没问题。

最佳答案

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

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

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

关于java - 对 Apache Mina 总带宽进行基准测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4271289/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com