所以,我有一个输入是 Kafka 队列 Tweet 文件。我的拓扑需要阅读它并点击三个不同的外部api。我需要一个方法来确保这三个都完成了,然后再继续前进。我不认为 BatchBolt 是个好办法,是吗?有人能帮忙吗?编辑/澄清三个api命中需要返回结果。我需要在文档传递给下一个用户之前处理这些响应 bolt .
Kafka
Tweet
BatchBolt
bolt
camsedfj1#
如果我没听错的话。你有Kafka的艾美短信。每一条信息都需要在三个不同的系统中传递。这可以很容易地完成配置拓扑。
TopologyBuilder topologyBuilder = new TopologyBuilder ();topologyBuilder.setSpout("Generator", spout, 1);topologyBuilder.setBolt("External1", bolt1, 1).localOrShuffleGrouping("Generator");topologyBuilder.setBolt("External2", bolt2, 1).localOrShuffleGrouping("Generator");topologyBuilder.setBolt("External3", bolt3, 1).localOrShuffleGrouping("Generator");
TopologyBuilder topologyBuilder = new TopologyBuilder ();
topologyBuilder.setSpout("Generator", spout, 1);
topologyBuilder.setBolt("External1", bolt1, 1).localOrShuffleGrouping("Generator");
topologyBuilder.setBolt("External2", bolt2, 1).localOrShuffleGrouping("Generator");
topologyBuilder.setBolt("External3", bolt3, 1).localOrShuffleGrouping("Generator");
在这个简单的例子中,3个不同的螺栓连接到1个Kafka喷口。当喷口发出信息时,它会同时发送到所有三个螺栓。如果其中一个螺栓没有确认,它将失败,并重新限制到所有这些螺栓。
1条答案
按热度按时间camsedfj1#
如果我没听错的话。你有Kafka的艾美短信。每一条信息都需要在三个不同的系统中传递。这可以很容易地完成配置拓扑。
在这个简单的例子中,3个不同的螺栓连接到1个Kafka喷口。当喷口发出信息时,它会同时发送到所有三个螺栓。如果其中一个螺栓没有确认,它将失败,并重新限制到所有这些螺栓。