Confluent.Kafka.AspNetCore
1.0.1
dotnet add package Confluent.Kafka.AspNetCore --version 1.0.1
NuGet\Install-Package Confluent.Kafka.AspNetCore -Version 1.0.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Confluent.Kafka.AspNetCore" Version="1.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Confluent.Kafka.AspNetCore --version 1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Confluent.Kafka.AspNetCore, 1.0.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Confluent.Kafka.AspNetCore as a Cake Addin #addin nuget:?package=Confluent.Kafka.AspNetCore&version=1.0.1 // Install Confluent.Kafka.AspNetCore as a Cake Tool #tool nuget:?package=Confluent.Kafka.AspNetCore&version=1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Confluent.Kafka.AspNetCore
介绍
Confluent.Kafka Asp.Net Core 服务注册扩展
- 安装
Install-Package Confluent.Kafka.AspNetCore
dotnet add package Confluent.Kafka.AspNetCore
- 注册Confluent.Kafka
// 生产者
builder.Services.AddConfluentKafkaProducer<string, byte[]>(builder.Configuration);
//Or 消费者
builder.Services.AddConfluentKafkaConsumer<Ignore, string>(builder.Configuration);
- 生产者构造函数注入及使用
//注入
private readonly IProducer<string, byte[]> _progress;
public WeatherForecastController(IProducer<string, byte[]> progress)
{
_producer = producer;
}
//使用
[HttpGet(Name = "GetWeatherForecast")]
public async Task<IEnumerable<WeatherForecast>> Get()
{
var value = Encoding.UTF8.GetBytes("zxc");
await _progress.ProduceAsync("mc", new Message<string, byte[]> { Key = "zxc", Value = value });
return Enumerable.Range(1, 5).Select(index => new WeatherForecast
{
Date = DateTime.Now.AddDays(index),
TemperatureC = Random.Shared.Next(-20, 55),
Summary = Summaries[Random.Shared.Next(Summaries.Length)]
}).ToArray();
}
4.消费者使用
//继承BackgroundService类覆写ExecuteAsync 订阅topic
public class TopicSub : BackgroundService
{
public IServiceProvider Services { get; }
public TopicSub(IServiceProvider services)
{
Services = services;
}
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
List<string> list = new List<string> { "mc" };
using (var scope = Services.CreateScope())
{
foreach (var item in list)
{
var _consumer = scope.ServiceProvider.GetRequiredService<IConsumer<Ignore, string>>();
await _consumer.StartConsumerLoop
(
(s, k) =>
{
Console.WriteLine($"{s}:{k}");
return Task.FromResult(true);
}, item
);
}
}
}
}
//注入后台服务
builder.Services.AddHostedService<TopicSub>();
4.配置文件
{
"ConfluentKafka": {
"BootstrapServers":"",
"GroupId":"",
"QueueBufferingMaxMessages":10,
"MessageTimeoutMs": 5000,
"RequestTimeoutMs": 3000
}
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.1
- Auto.Options (>= 1.0.0)
- Confluent.Kafka (>= 2.2.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Confluent.Kafka.AspNetCore:
Package | Downloads |
---|---|
Confluent.Kafka.EventBus.AspNetCore
基于Confluent.Kafka实现EventBus |
|
IEventBus.Confluent.Kafka
基于Confluent.Kafka实现EventBus |
GitHub repositories
This package is not used by any popular GitHub repositories.
更改IConsumer 注册方式为Singleton