Raycynix.Extensions.Messaging.Kafka
1.0.1
dotnet add package Raycynix.Extensions.Messaging.Kafka --version 1.0.1
NuGet\Install-Package Raycynix.Extensions.Messaging.Kafka -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="Raycynix.Extensions.Messaging.Kafka" Version="1.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Raycynix.Extensions.Messaging.Kafka" Version="1.0.1" />
<PackageReference Include="Raycynix.Extensions.Messaging.Kafka" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Raycynix.Extensions.Messaging.Kafka --version 1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Raycynix.Extensions.Messaging.Kafka, 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.
#:package Raycynix.Extensions.Messaging.Kafka@1.0.1
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Raycynix.Extensions.Messaging.Kafka&version=1.0.1
#tool nuget:?package=Raycynix.Extensions.Messaging.Kafka&version=1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Raycynix.Extensions.Messaging.Kafka
Raycynix.Extensions.Messaging.Kafka contains the Kafka transport integration for Raycynix messaging.
What it contains
AddKafka(...)KafkaMessagingConfiguration- Kafka-backed
IMessagePublisher - Kafka producer setup through
Confluent.Kafka - message publishing to Kafka topics using
MessageEnvelope<TMessage>.Destination
What it does not contain
- Kafka consumer hosted services
- consumer group processing pipeline
- schema registry integration
- outbox persistence
- retry topic orchestration
Usage
Example appsettings.json:
{
"KafkaMessagingConfiguration": {
"BootstrapServers": [
"localhost:9092"
],
"ClientId": "orders-service",
"EnableIdempotence": true,
"Acks": "all",
"Consumer": {
"Enabled": true,
"Topics": [
"orders.created"
]
}
}
}
Register the transport:
builder.Services.AddRaycynixMessaging(builder.Configuration)
.AddKafka(builder.Configuration);
Publish to a Kafka topic:
public class OrderPublisher(
IMessageEnvelopeFactory envelopeFactory,
IMessagePublisher messagePublisher)
{
public async Task PublishAsync(string orderId, CancellationToken cancellationToken)
{
var envelope = envelopeFactory.Create(
new OrderCreatedMessage(orderId),
destination: "orders.created",
format: MessageFormat.Json);
await messagePublisher.PublishAsync(envelope, cancellationToken);
}
}
The envelope destination is used as the Kafka topic name, and the package publishes:
- serialized payload bytes
message-id,correlation-id,causation-id- contract/version headers from the base messaging layer
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- Confluent.Kafka (>= 2.14.0)
- Raycynix.Extensions.Messaging (>= 1.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
See the package-local CHANGELOG.md for the full change history. Override PackageReleaseNotes in the package project file for major release-specific notes.