2

使用响应式 mongo 模板迭代大型结果的推荐方法是什么?

我找不到阻塞 MongoTemplate::stream() 操作的反应替代方案,它使用 MongoDB 游标(并且工作得很好)。

当我使用 Reactive 模板做最明显的事情时,我的应用程序工作了一段时间,然后毫无例外地卡住了(下面的 Kotlin 代码段):

/* Repository */

fun findByStatus(status: Status): Flux<Event>

/* Service */

repository.findByStatus(status).buffer(1000).collect { events ->
       // process batch of events
}

我不明白 - 如果它试图获取内存中的所有结果,它应该立即因 OOM 失败,但不会在一段时间后卡住,对吗?

我究竟做错了什么?

4

0 回答 0