Я хочу создать Play 2 Enumeratee, который принимает значения и выводит их, разбивая вместе, каждые x
секунды/миллисекунды. Таким образом, в многопользовательской среде websocket с большим количеством пользовательского ввода можно было ограничить количество принимаемых кадров в секунду.
Я знаю, что можно группировать множество элементов вместе следующим образом:
val chunker = Enumeratee.grouped(
Traversable.take[Array[Double]](5000) &>> Iteratee.consume()
)
Есть ли встроенный способ сделать это на основе времени, а не на основе количества элементов?
Я думал об этом как-то с запланированной работой Akka, но на первый взгляд это кажется неэффективным, и я не уверен, что возникнут проблемы с соглашением.