由于此功能相对较新(mongo 3.6),我发现很少有java示例。 我的问题: 1.观看变更流的最佳做法是什么? 2.观看视频流是否必须是阻止呼叫? (这意味着每个集合的线程不太理想) 这是我遇到的例子:
http://mongodb.github.io/mongo-java-driver/3.6/driver/tutorials/change-streams/
阻止电话是: 。collection.watch()的forEach(printBlock);
谢谢, ROTEM。
答案 0 :(得分:0)
使用mongo反应性驱动程序,以便它不会阻塞。而且我们使用了这种方法,并在生产中运行了最后一个月,没问题。
答案 1 :(得分:0)
当您在reactive streams的上下文中查看更改流时,它们会更有意义。我花了一段时间才意识到这个概念的存在不仅仅是MongoDB驱动程序。
我建议您阅读上面的文章,然后查看提供的示例here。这两个链接有助于清除问题,并提供了有关如何利用非阻塞式反应流Mongo驱动程序编写代码的见解。