gpt4 book ai didi

scala - Akka 流 : At-Least-Once-Delivery behaviour with Kafka and Cassandra

转载 作者:行者123 更新时间:2023-12-04 17:59:51 25 4
gpt4 key购买 nike

我从 Akka Streams 开始,到目前为止一切顺利。但是,我遇到了一个我不知道如何处理的用例。该场景是一个以 ActorPublisher 作为源的流,它使用来自 Kafka 的消息,而订阅者作为更新 Cassandra 表的接收器。

Kafka ~> 一些映射操作 ~> Cassandra

关键是,每次成功处理消息并将其插入到 Cassandra 中时,我都想向 Kafka 明确确认,以便我可以重新读取消息,以防发生灾难并且服务失败,即至少在某种情况下一旦交付行为。我怎么能用 Akka Streams 来解决这个问题?是否支持场景?

确实,我总是可以使用自动提交行为来配置 Kafka 消费者,但我宁愿控制我阅读消息的方式。

更新

关于这个话题,我们目前正在评估Reactive Kafka从 0.8 版本开始,他们在 kafka 中包含了手动提交(这些人的荣誉)。此功能将允许我们实现所需的 alod 行为。

最佳答案

我认为您可以使用 PushPullStage 使用自定义流处理,如 akka streams documentation 中所述。

关于scala - Akka 流 : At-Least-Once-Delivery behaviour with Kafka and Cassandra,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30475962/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com