Я занимаюсь разработкой относительно быстро развивающейся игры (серверная часть 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 обновлений объектов в секунду с такой «скоростью», без проблем.