Я тестирую метод RPC udp, который может отбросить пакет и вызвать тайм-аут.
Результаты могут быть:
Iteration 20: 0.712 ms/op
Iteration 21: failed to receieve exception= com.my.rpc.exception.RPCInterfaceRuntimeException: request time out.
475.665 ms/op
Iteration 22: 0.824 ms/op
Iteration 23: 0.728 ms/op
Iteration 24: 0.765 ms/op
Iteration 25: 1.152 ms/op
Iteration 26: 1.216 ms/op
Iteration 27: 1.155 ms/op
Iteration 28: 1.238 ms/op
Iteration 29: failed to receieve exception= com.my.rpc.exception.RPCInterfaceRuntimeException: request time out.
5633.007 ms/op
Поскольку возможен тайм-аут, окончательный результат вычисляется неверно, например:
Benchmark Mode Cnt Score Error Units
BenchmarkMain.queryBeers thrpt 90 1.020 ± 0.110 ops/ms
BenchmarkMain.queryBeers avgt 90 46.558 ± 155.295 ms/op
Среднее время не прямо выше.
Как исключить эти итерации тайм-аута, чтобы получить разумный результат?