弥合Kafka和Akka Streams

时间:2018-01-16 11:37:40

标签: c# apache-kafka akka kafka-consumer-api akka-stream

Kafka Streams仅在JVM平台上受支持。所以我正在寻找一种方法来利用C#中的Akka Streams来构建一个受Akka Streams好处的Kafka消费者。

Confluent C#Kafka消费者基于轮询和事件处理,例如:

using (var consumer = new Consumer<Null, string>(consumerConfig, null, new StringDeserializer(Encoding.UTF8)))
{
    // Subscribe to the OnMessage event
    consumer.OnMessage += (obj, msg) =>
    {
        // handle message
    };

    consumer.Subscribe(new List<string>() { kafkaTopic });

    while (!cancelled)
    {
        consumer.Poll();
    }
}

并且Akka Streams的源代码似乎基于IEnumerable。由于轮询和IEnumerable本质上是相似的,因此必须以某种方式桥接这两种技术。我是Akka Streams的新手,并且无法弄清楚如何做到这一点。关于如何进行的任何想法或提示都是最受欢迎的。

0 个答案:

没有答案