Pulsar.Client
3.9.2
dotnet add package Pulsar.Client --version 3.9.2
NuGet\Install-Package Pulsar.Client -Version 3.9.2
<PackageReference Include="Pulsar.Client" Version="3.9.2" />
<PackageVersion Include="Pulsar.Client" Version="3.9.2" />
<PackageReference Include="Pulsar.Client" />
paket add Pulsar.Client --version 3.9.2
#r "nuget: Pulsar.Client, 3.9.2"
#addin nuget:?package=Pulsar.Client&version=3.9.2
#tool nuget:?package=Pulsar.Client&version=3.9.2
pulsar-client-dotnet
Contributions and stars ★ are most welcome!
Pulsar.Client nuget | Pulsar.Client.Otel nuget
Supported pulsar cluster versions: 2.4+
Find examples of usage in /examples folder. We are trying to keep api similar to the Java client, so please take a look at it's documentation to understand possible options available. You can also join telegram chat https://t.me/pro_pulsar for further discussions.
Features list (based on Client Feature Matrix):
- Basic Producer/Consumer API
- Partitioned topics
- Batching
- Chunking
- Compression
- TLS
- Authentication (token, tls, oauth2)
- Reader API
- Proxy Support
- Effectively-Once
- Schema (All types, Multi-version)
- Consumer seek
- Multi-topics consumer
- Topics regex consumer
- Compacted topics
- User defined properties
- Reader hasMessageAvailable
- Hostname verification
- Multi Hosts Service Url
- Key_shared subscription
- Key based batcher
- Negative Acknowledge
- Delayed/scheduled messages
- Dead Letter Policy
- Interceptors
- Transactions
- Statistics
- End-to-end Encryption
- SubscriptionInitialPosition
- Cumulative Ack
- Batch-Index Ack
- SNI Routing
- Table view
Quick contributing guide
Common steps before building
- Fork and clone locally
- Install dotnet tools:
dotnet tool restore
- Restore packages:
dotnet restore
MacOS steps before building:
- Install Snappy:
brew install snappy
- Install Libzstd:
brew install zstd
Ubuntu steps before building:
- Install Snappy:
sudo apt-get install -y libsnappy-dev
- Install Libzstd:
sudo apt-get install -y libzstd-dev
Building and Testing
- Build the solution:
dotnet build
(dotnet core sdk required) This will install required tools and then you can use any IDE to build solution - Make your modifications
- Run unit tests:
cd tests/UnitTests
&&dotnet test
- (Optional) If changes are made in Client logic, run Integration tests. Before running do the following
- Install pulsar cluster:
- MacOS guide:
brew tap streamlio/homebrew-formulae
brew install streamlio/homebrew-formulae/pulsar
brew install streamlio/homebrew-formulae/bookkeeper
brew services start pulsar
brew services start bookkeeper
- Run commands in
/tests/IntegrationTests/commands.txt
- Change
pulsarAddress
in Common.fs to point your pulsar cluster - Ensure
advertisedAddress
in broker.conf to point your pulsar cluster - Ensure
public/default
namespace with default settings - Ensure
public/retention
namespace with time or storage size retention configured
- Install pulsar cluster:
- Send a Pull Request
Maintaners and support
- You can suppport me (@Lanayx) using Github sponsors so I continue maintaining this project well.
- If you want me to implement new (missing) features, this can be arranged on a paid basis using Github sponsors as well, please PM in Telegram
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | 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. 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. |
-
net8.0
- Apache.Avro (>= 1.11.3)
- AvroSchemaGenerator (>= 2.9.2)
- FSharp.Core (>= 8.0.401)
- FSharp.UMX (>= 1.1.0)
- K4os.Compression.LZ4 (>= 1.3.6)
- Microsoft.Extensions.Caching.Memory (>= 8.0.1)
- Microsoft.Extensions.Logging (>= 8.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.2)
- Microsoft.IO.RecyclableMemoryStream (>= 3.0.0)
- NSec.Cryptography (>= 22.4.0)
- PemUtils (>= 3.0.0.82)
- Pipelines.Sockets.Unofficial (>= 2.2.8)
- protobuf-net (>= 3.2.30)
- protobuf-net.Reflection (>= 3.2.12)
- Snappier (>= 1.1.6)
- System.IO.Pipelines (>= 8.0.0)
- zlib.net-mutliplatform (>= 1.0.6)
- ZstdNet (>= 1.4.5)
NuGet packages (9)
Showing the top 5 NuGet packages that depend on Pulsar.Client:
Package | Downloads |
---|---|
Pulsar.Client.Otel
OpenTelemetry plugin for Pulsar.Client |
|
Zq.Utils.Core
.NET Standard2.0、.NET Standard2.1、.NET5、.NET6版本工具类 |
|
DotNetCore.CAP.Pulsar
Distributed transaction solution in micro-service base on eventually consistency, also an eventbus with Outbox pattern. |
|
SnD.Sdk
SDK for Sneaks&Data OSS Projects |
|
RJ.Commons.Pulsar
Default Pulsar API for Aries project. |
GitHub repositories (2)
Showing the top 2 popular GitHub repositories that depend on Pulsar.Client:
Repository | Stars |
---|---|
dotnetcore/CAP
Distributed transaction solution in micro-service base on eventually consistency, also an eventbus with Outbox pattern
|
|
LeonKou/NetPro
🌈An enhanced version with clean architecture of asp.netcore,efficiently manage startup,Support for netcore3.1/6.0
|
Version | Downloads | Last updated |
---|---|---|
3.9.2 | 1,882 | 4/14/2025 |
3.9.1 | 1,281 | 4/3/2025 |
3.9.0 | 1,061 | 3/26/2025 |
3.8.1 | 6,957 | 3/7/2025 |
3.8.0 | 1,396 | 3/5/2025 |
3.7.0 | 21,892 | 2/8/2025 |
3.6.2 | 44,330 | 12/9/2024 |
3.6.1 | 42,255 | 11/21/2024 |
3.6.0 | 120,379 | 8/8/2024 |
3.5.4 | 9,337 | 8/1/2024 |
3.5.3 | 2,037 | 7/31/2024 |
3.5.2 | 8,052 | 7/15/2024 |
3.5.1 | 9,119 | 6/19/2024 |
3.5.0 | 7,164 | 5/15/2024 |
3.4.0 | 4,068 | 4/19/2024 |
3.3.1 | 3,014 | 3/28/2024 |
3.3.0 | 38,044 | 2/12/2024 |
3.2.0 | 1,810 | 2/1/2024 |
3.1.0 | 21,021 | 11/19/2023 |
3.0.0 | 789 | 11/17/2023 |
3.0.0-beta.2 | 159 | 10/22/2023 |
3.0.0-beta.1 | 123 | 10/15/2023 |
2.18.3 | 204 | 4/16/2025 |
2.18.2 | 177 | 4/3/2025 |
2.18.1 | 165 | 4/2/2025 |
2.18.0 | 171 | 3/27/2025 |
2.17.0 | 208 | 12/26/2024 |
2.16.0 | 10,602 | 4/29/2024 |
2.15.2 | 2,519 | 3/7/2024 |
2.15.1 | 803 | 2/12/2024 |
2.15.0 | 44,589 | 11/18/2023 |
2.14.0 | 1,102 | 11/14/2023 |
2.13.2 | 37,426 | 10/11/2023 |
2.13.1 | 3,441 | 9/29/2023 |
2.13.0 | 49,058 | 9/25/2023 |
2.12.7 | 21,005 | 8/9/2023 |
2.12.6 | 43,282 | 7/23/2023 |
2.12.4 | 4,763 | 7/17/2023 |
2.12.3 | 17,108 | 7/6/2023 |
2.12.2 | 109,085 | 3/31/2023 |
2.12.1 | 24,560 | 3/22/2023 |
2.12.0 | 10,900 | 1/29/2023 |
2.11.0 | 39,842 | 10/13/2022 |
2.10.4 | 15,294 | 10/7/2022 |
2.10.3 | 2,900 | 9/16/2022 |
2.10.2 | 53,415 | 6/22/2022 |
2.10.1 | 67,477 | 3/9/2022 |
2.10.0 | 41,202 | 2/23/2022 |
2.9.4 | 21,989 | 12/5/2021 |
2.9.3 | 3,515 | 11/26/2021 |
2.9.2 | 1,214 | 11/11/2021 |
2.9.1 | 29,865 | 10/14/2021 |
2.9.0 | 2,084 | 9/29/2021 |
2.8.1 | 5,401 | 9/9/2021 |
2.8.0 | 2,186 | 9/2/2021 |
2.7.2 | 9,180 | 8/26/2021 |
2.7.1 | 7,401 | 8/6/2021 |
2.7.0 | 7,263 | 7/20/2021 |
2.6.3 | 2,075 | 7/15/2021 |
2.6.2 | 1,964 | 7/9/2021 |
2.6.1 | 1,346 | 7/6/2021 |
2.6.0 | 6,689 | 7/5/2021 |
2.5.3 | 1,171 | 7/2/2021 |
2.5.2 | 1,309 | 6/30/2021 |
2.5.1 | 1,609 | 6/29/2021 |
2.5.0 | 1,252 | 6/27/2021 |
2.4.1 | 1,456 | 6/25/2021 |
2.4.0 | 2,623 | 6/14/2021 |
2.3.3 | 1,562 | 6/8/2021 |
2.3.1 | 2,771 | 5/11/2021 |
2.3.0 | 1,320 | 5/11/2021 |
2.2.0 | 2,201 | 4/22/2021 |
2.1.1 | 1,284 | 4/14/2021 |
2.1.0 | 4,618 | 3/16/2021 |
2.0.4 | 2,290 | 3/5/2021 |
2.0.3 | 1,289 | 3/5/2021 |
2.0.2 | 2,610 | 2/23/2021 |
2.0.1 | 9,292 | 2/17/2021 |
2.0.0 | 1,290 | 2/12/2021 |
1.8.5 | 9,391 | 2/10/2021 |
1.8.4 | 25,968 | 1/25/2021 |
1.8.3 | 2,346 | 1/6/2021 |
1.8.2 | 3,351 | 12/17/2020 |
1.8.1 | 4,421 | 12/15/2020 |
1.8.0 | 4,008 | 12/10/2020 |
1.7.8 | 92,639 | 5/17/2021 |
1.7.7 | 1,208 | 5/17/2021 |
1.7.6 | 1,283 | 5/17/2021 |
1.7.5 | 3,127 | 10/30/2020 |
1.7.4 | 6,779 | 10/19/2020 |
1.7.3 | 28,799 | 10/13/2020 |
1.7.2 | 1,770 | 10/2/2020 |
1.7.1 | 4,964 | 9/17/2020 |
1.7.0 | 1,594 | 9/14/2020 |
1.6.3 | 1,400 | 9/12/2020 |
1.6.2 | 1,498 | 9/3/2020 |
1.6.1 | 1,356 | 9/2/2020 |
1.6.0 | 1,505 | 8/30/2020 |
1.5.0 | 10,803 | 8/3/2020 |
1.4.3 | 2,486 | 7/9/2020 |
1.4.2 | 1,564 | 7/2/2020 |
1.4.1 | 1,281 | 6/29/2020 |
1.4.0 | 1,798 | 6/17/2020 |
1.3.0 | 1,482 | 6/14/2020 |
1.2.0 | 2,845 | 5/27/2020 |
1.1.1 | 1,380 | 5/22/2020 |
1.1.0 | 1,973 | 5/15/2020 |
1.0.1 | 1,339 | 5/14/2020 |
1.0.0 | 1,356 | 5/14/2020 |
0.18.4 | 1,900 | 4/21/2020 |
0.18.3 | 1,539 | 4/18/2020 |
0.18.2 | 3,269 | 4/8/2020 |
0.18.1 | 1,372 | 4/7/2020 |
0.18.0 | 1,571 | 4/1/2020 |
0.17.0 | 1,566 | 3/21/2020 |
0.16.0 | 1,410 | 3/19/2020 |
0.15.0 | 1,995 | 2/28/2020 |
0.14.1 | 1,394 | 2/25/2020 |
0.14.0 | 1,329 | 2/21/2020 |
0.13.1 | 1,369 | 2/19/2020 |
0.13.0 | 1,727 | 2/14/2020 |
0.12.0 | 2,077 | 12/31/2019 |
0.11.2 | 1,562 | 12/23/2019 |
0.11.1 | 1,481 | 12/20/2019 |
0.11.0 | 1,427 | 12/16/2019 |
0.10.0 | 1,501 | 11/17/2019 |
0.9.1 | 1,562 | 11/14/2019 |
0.9.0 | 1,481 | 11/12/2019 |
0.8.2 | 1,505 | 11/9/2019 |
0.8.1 | 1,498 | 11/4/2019 |
0.8.0 | 1,429 | 11/2/2019 |
0.7.0 | 1,453 | 10/25/2019 |
0.6.0 | 1,517 | 10/16/2019 |
0.5.0 | 1,446 | 10/15/2019 |
0.4.0 | 1,475 | 10/8/2019 |
0.3.0 | 1,449 | 10/7/2019 |
0.2.0 | 1,568 | 9/30/2019 |
0.1.5 | 1,311 | 9/13/2019 |
0.1.4 | 1,275 | 9/9/2019 |
0.1.3 | 1,251 | 9/9/2019 |
0.1.2 | 1,211 | 9/9/2019 |
0.1.1 | 1,327 | 9/6/2019 |
0.1.0 | 1,344 | 9/6/2019 |
Background task for consumer disposal