我想并行触发多个Web请求,然后在风暴拓扑中聚合数据?以下哪种方式是首选
1)在螺栓中创建多个线程
2)创建多个螺栓并创建合并螺栓以聚合数据。
我想在一个螺栓中创建多个线程,因为在另一个螺栓中合并数据并不是一个简单的过程。但我发现我在互联网上发现了一些问题 https://mail-archives.apache.org/mod_mbox/storm-user/201311.mbox/%3CCAAYLz+pUZ44GNsNNJ9O5hjTr2rZLW=CKM=FGvcfwBnw613r1qQ@mail.gmail.com%3E 但没有明确的理由为什么不创建多个线程。任何指针都会有所帮助。
旁注是否意味着我不应该使用java8的并行流功能以及https://docs.oracle.com/javase/tutorial/collections/streams/parallelism.html中提到的功能?
答案 0 :(得分:2)
增加螺栓的tasks
数量,就像生成相同的多个实例一样。并且还增加executors (threads)
的数量来均匀处理它们。
确保#executors <= #tasks
。风暴会为你做剩下的事。