Ускоряем реализацию fs2 стримов для reactive-streams

Если вы, как и я, не в восторге от текущих инструментов для коммуникации с MongoDB, и меньшим злом выбрали для себя выбрали MongoDB Reactive Streams Java Driver, в надежде на существующую интеграцию reactive-streams с fs2, то вероятно, вас ждет разочарование. Официальная интеграция оооооооооооооооооооооооочень медленная. Если вы не собираетесь запускать ваше добро на JS, то возможно вам пригодится мое решение: https://github.com/dokwork/fast-reactive-fs2.
Просто оставлю результат замеров здесь:

Benchmark                                      Mode  Cnt      Score      Error  Units
ReadOneMillionNumbers.dokworkStreamSubscriber  avgt   25     39.377 ±    2.749  ms/op
ReadOneMillionNumbers.fs2StreamSubscriber      avgt   25  11189.737 ± 2213.225  ms/op

2 комментария:

Anton Feoktistov комментирует...

Из-за чего он такой медленный?

Vladimir Popov комментирует...

Происходит запуск IO на каждый элемент