Orleans使用KafkaStream
Kafka安装配置见(Win10安装kafka并用C#调用-CSDN博客)
服务端项目、客户端项目导入nuget包Orleans.Streams.Kafka(8.0.2)
//.AddMemoryStreams(GlobalValueDefinition.StreamProviderName) //nuget引入 Microsoft.Orleans.Streaming
.AddKafkaStreamProvider(GlobalValueDefinition.StreamProviderName, kafkaConfig => { //nuget引入 Orleans.Streams.Kafka
kafkaConfig.BrokerList = new List<string> { "localhost:9092" };
kafkaConfig.ConsumerGroupId = "orleansGroup";
kafkaConfig.Topics = new List<TopicConfig> { new TopicConfig { Name = "RANDOMDATA" } };
//kafkaConfig.PollTimeout = TimeSpan.FromSeconds(10);
})
如上代码,将服务端和客户端配置中的AddMemoryStream替换为AddKafkaStreamProvider,启动zookeeper和kafka服务,启动orleans服务端和客户端,可成功推送消息。
打开kafka-manager界面如下:
可见到orleans配置的topic,软件测试界面如下: