Raduz.KafkaClient.Consumer
4.0.2
See the version list below for details.
dotnet add package Raduz.KafkaClient.Consumer --version 4.0.2
NuGet\Install-Package Raduz.KafkaClient.Consumer -Version 4.0.2
<PackageReference Include="Raduz.KafkaClient.Consumer" Version="4.0.2" />
paket add Raduz.KafkaClient.Consumer --version 4.0.2
#r "nuget: Raduz.KafkaClient.Consumer, 4.0.2"
// Install Raduz.KafkaClient.Consumer as a Cake Addin #addin nuget:?package=Raduz.KafkaClient.Consumer&version=4.0.2 // Install Raduz.KafkaClient.Consumer as a Cake Tool #tool nuget:?package=Raduz.KafkaClient.Consumer&version=4.0.2
| _ \ / \ | _ | | | |__ / | |/ /__ _ / | | ____ _ / | () ___ _ __ | | / | _ __ ___ _ _ _ __ ___ ___ _ __
| |) | / _ \ | | | | | | | / / | ' // | |_| |/ / _
| | | | |/ _ \ ' | || | / _ | ' / | | | | ' ` _ \ / _ \ '__|
| _ < / ___ | || | || |/ / | . \ (| | | < (| | || | | _/ | | | | | || () | | | __ \ || | | | | | | __/ |
|| _// __/ _//()|__,|| ||__,|_|||___|| ||_()_/|| ||/_,|| || |_|_|_|
How to use:
Add settings to your appsettings.json: KafkaClientConsumerConfig - inherits from https://docs.confluent.io/platform/current/clients/confluent-kafka-dotnet/_site/api/Confluent.Kafka.ConsumerConfig.html + MaxConsumeRetryCount count of retries (retry pattern)
SchemaRegistryConfig https://docs.confluent.io/platform/current/clients/confluent-kafka-dotnet/_site/api/Confluent.SchemaRegistry.SchemaRegistryConfig.html
Register ConfigureKafkaConsumer and ConfigureKafkaPublisher to services container
For Consumers create handlers for each topic like:
public class YourRequest : KafkaConsumerHandler<{YOUR-AVRO-OBJECT}> { public YourRequest() : base("{TOPIC-NAME}") { } }
In base class is injected IConsumerManager which is singleton managing pause/resume actions for soncumer, so if there is error with your DB f.e. you can pause consuming of all topics
Implement Exception handlers
For Consumer implement IConsumerExceptionHandler
Implement consumer pipeline behaviour
IConsumerPipelineBehaviour
Enjoy easily used package 😃
Issues or feature requests report here, please https://github.com/Rades98/Raduz.KafkaClient/issues
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. 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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
-
net6.0
- Microsoft.Extensions.Configuration.Abstractions (>= 6.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 6.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 6.0.0)
- Raduz.KafkaClient.Contracts (>= 4.0.2)
- YCherkes.SchemaRegistry.Serdes.Avro (>= 1.0.4)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Raduz.KafkaClient.Consumer:
Package | Downloads |
---|---|
Raduz.KafkaClient.Client
Easy to use Kafka client using AVRO schema |
GitHub repositories
This package is not used by any popular GitHub repositories.