{"repo":"kmcclellan/kafka-di","free":true,"listed":false,"github":"https://github.com/kmcclellan/kafka-di","clone":"git clone https://github.com/kmcclellan/kafka-di.git","description":"An extension of Confluent's Kafka client for use with Microsoft.Extensions.DependencyInjection (and friends).","language":"C#","stars":15,"topics":["kafka","confluent-kafka","dependency-injection","ioc","logging"],"license":"MIT","category":"data-pipelines","readme_excerpt":"Kafka Dependency Injection An extension of Confluent's Kafka client for use with Microsoft.Extensions.DependencyInjection (and friends). Features Configure/resolve Kafka clients using the service container. Load client config properties using Microsoft.Extensions.Configuration . Automatically log client events using Microsoft.Extensions.Logging . Extend a base hosted service to consume/process Kafka messages with Microsoft.Extensions.Hosting . Installation Add the NuGet package to your project: $ dotnet add package Confluent.Kafka.DependencyInjection Usage Resolving clients Kafka DI works out-of-the-box after registering services with an IServiceCollection . Inject Kafka clients via constructor. Configuring clients Client configuration properties are bound to the Kafka section of .NET configuration providers, such as appsettings.json . You can also specify configuration properties using the options pattern. Configure serialization by registering the appropriate interface. For advanced scenarios, implement IClientBuilderSetup to customize clients further. Register custom setup with services. Consumer hosting Once the client is configured, implement ConsumerService to integrate with the .NET host. Register the service with the container. Hosted consumer features: Configurable parallelism while preserving order for each Kafka message key. Parallel-safe offset storage to achieve \"at least once\" delivery semantics.","default_branch":null,"files":null,"tree":[],"storefront":"/r/kmcclellan","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/kmcclellan/kafka-di/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}