Epam.Kafka.PubSub
2.3.146-rc
Prefix Reserved
dotnet add package Epam.Kafka.PubSub --version 2.3.146-rc
NuGet\Install-Package Epam.Kafka.PubSub -Version 2.3.146-rc
<PackageReference Include="Epam.Kafka.PubSub" Version="2.3.146-rc" />
paket add Epam.Kafka.PubSub --version 2.3.146-rc
#r "nuget: Epam.Kafka.PubSub, 2.3.146-rc"
// Install Epam.Kafka.PubSub as a Cake Addin #addin nuget:?package=Epam.Kafka.PubSub&version=2.3.146-rc&prerelease // Install Epam.Kafka.PubSub as a Cake Tool #tool nuget:?package=Epam.Kafka.PubSub&version=2.3.146-rc&prerelease
Epam.Kafka.PubSub
About
Epam.Kafka.PubSub package provides AddSubscription
and AddPublication
extension methods for KafkaBuilder
. This provides the ability to set up default implementations of IHostedService
to read/write messages to/from kafka and proccess them in batches with:
* Retry mechanism for batch and for entire pipeline.
* Parallel and sequential processing configuration.
* Health checks.
* System.Diagnostics.Metrics for key operations.
* Delayed start, ability to wait for dependencies (e.g. database migrations).
Key Features
- Define
ISubscriptionHandler<TKey, TValue>
interface and provide base abstract classSubscriptionHandler<TKey, TValue>
to simplify creation of batch message processing logic for kafka subscriptions. - Define
IExternalOffsetsStorage
interface to store processed message offsets externally. Default implementation that use EntityFrameworkCore available in related package Epam.Kafka.PubSub.EntityFrameworkCore - Define
IPublicationHandler<TKey, TValue>
interface and provide base abstract classPublicationHandler<TKey, TValue, TEntity>
to simplify creation of batch processing logic for data publishers.
How to Use
Create subscription
Create class derived from SubscriptionHandler<TKey, TValue>
or ISubscriptionHandler<TKey, TValue>
.
Register services and configure subscription.
KafkaBuilder kafkaBuilder = services.AddKafka();
kafkaBuilder.AddSubscription<string, KafkaEntity, SubscriptionHandlerSample>("Sample");
Create publication
Create class derived from IPublicationHandler<TKey, TValue>
.
Register services and configure publication.
KafkaBuilder kafkaBuilder = services.AddKafka();
kafkaBuilder.AddPublication<string, KafkaEntity, PublicationHandlerSample>("Sample")
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. 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 is compatible. 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 | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 is compatible. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.6.2
- Epam.Kafka (>= 2.3.146-rc)
- Microsoft.Extensions.Configuration.Binder (>= 6.0.0)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 6.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 6.0.0)
- Polly (>= 8.4.0)
- System.Diagnostics.DiagnosticSource (>= 6.0.0)
-
.NETStandard 2.0
- Epam.Kafka (>= 2.3.146-rc)
- Microsoft.Extensions.Configuration.Binder (>= 6.0.0)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 6.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 6.0.0)
- Polly (>= 8.4.0)
- System.Diagnostics.DiagnosticSource (>= 6.0.0)
-
net6.0
- Epam.Kafka (>= 2.3.146-rc)
- Microsoft.Extensions.Configuration.Binder (>= 6.0.0)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 6.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 6.0.0)
- Polly (>= 8.4.0)
- System.Diagnostics.DiagnosticSource (>= 6.0.0)
-
net8.0
- Epam.Kafka (>= 2.3.146-rc)
- Microsoft.Extensions.Configuration.Binder (>= 8.0.0)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 8.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 8.0.0)
- Polly (>= 8.4.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Epam.Kafka.PubSub:
Package | Downloads |
---|---|
Epam.Kafka.PubSub.EntityFrameworkCore
EntityFrameworkCore implementation for key abstractions defined in [Epam.Kafka.PubSub](https://www.nuget.org/packages/Epam.Kafka.PubSub) |
|
Epam.Kafka.PubSub.EntityFramework6
EntityFramework 6 (https://learn.microsoft.com/en-us/ef/ef6/) implementation for key abstractions defined in [Epam.Kafka.PubSub](https://www.nuget.org/packages/Epam.Kafka.PubSub) |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
2.3.146-rc | 145 | 10/1/2024 |
2.3.145 | 606 | 10/1/2024 |
2.3.143-rc | 137 | 9/25/2024 |
2.3.140 | 1,801 | 7/15/2024 |
2.3.138-rc | 128 | 7/15/2024 |
2.3.136-rc | 124 | 7/15/2024 |
2.3.129-rc | 149 | 7/11/2024 |
2.3.127-rc | 150 | 7/10/2024 |
2.3.119-rc | 142 | 7/9/2024 |
2.3.117-rc | 156 | 7/9/2024 |
2.3.114-rc | 154 | 7/8/2024 |
2.3.113-rc | 146 | 7/8/2024 |
2.3.109-rc | 157 | 7/8/2024 |
2.3.108-rc | 156 | 7/5/2024 |
2.3.104-rc | 151 | 6/28/2024 |
2.3.98-rc | 155 | 6/27/2024 |
2.3.96-rc | 166 | 6/26/2024 |
2.3.94-rc | 172 | 6/26/2024 |
2.3.92-rc | 138 | 6/25/2024 |
2.3.87-rc | 145 | 6/19/2024 |
2.3.85-rc | 155 | 6/19/2024 |
2.2.84 | 234 | 6/19/2024 |
2.2.80-rc | 201 | 6/17/2024 |
2.2.78-rc | 156 | 6/14/2024 |
2.2.61-rc | 138 | 6/11/2024 |
2.1.55 | 249 | 6/7/2024 |
2.1.52-rc | 150 | 6/7/2024 |
2.1.51-rc | 129 | 6/7/2024 |
2.1.49-rc | 146 | 6/6/2024 |
2.1.47-rc | 146 | 6/4/2024 |
2.1.45-rc | 166 | 6/4/2024 |
2.1.41-rc | 197 | 5/29/2024 |
2.1.38-rc | 151 | 5/29/2024 |
2.0.36 | 257 | 4/8/2024 |
2.0.34-rc | 138 | 4/8/2024 |
2.0.32-rc | 118 | 4/5/2024 |
2.0.0-rc | 116 | 4/5/2024 |