Pulsar.Client 3.9.1

There is a newer version of this package available.
See the version list below for details.
dotnet add package Pulsar.Client --version 3.9.1
                    
NuGet\Install-Package Pulsar.Client -Version 3.9.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="Pulsar.Client" Version="3.9.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Pulsar.Client" Version="3.9.1" />
                    
Directory.Packages.props
<PackageReference Include="Pulsar.Client" />
                    
Project file
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 Pulsar.Client --version 3.9.1
                    
#r "nuget: Pulsar.Client, 3.9.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.
#addin nuget:?package=Pulsar.Client&version=3.9.1
                    
Install Pulsar.Client as a Cake Addin
#tool nuget:?package=Pulsar.Client&version=3.9.1
                    
Install Pulsar.Client as a Cake Tool

pulsar-client-dotnet

Pulsar.Client

.NET Core Windows .NET Core Ubuntu

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
    1. 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
    2. Run commands in /tests/IntegrationTests/commands.txt
    3. Change pulsarAddress in Common.fs to point your pulsar cluster
    4. Ensure advertisedAddress in broker.conf to point your pulsar cluster
    5. Ensure public/default namespace with default settings
    6. Ensure public/retention namespace with time or storage size retention configured
  • 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 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.  net10.0 was computed.  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.

NuGet packages (9)

Showing the top 5 NuGet packages that depend on Pulsar.Client:

Package Downloads
Pulsar.Client.Otel

OpenTelemetry plugin for Pulsar.Client

DotNetCore.CAP.Pulsar

Distributed transaction solution in micro-service base on eventually consistency, also an eventbus with Outbox pattern.

Zq.Utils.Core

.NET Standard2.0、.NET Standard2.1、.NET5、.NET6版本工具类

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.4 1,316 5/28/2025
3.9.3 4,758 5/22/2025
3.9.2 13,381 4/14/2025
3.9.1 2,094 4/3/2025
3.9.0 1,613 3/26/2025
3.8.1 12,606 3/7/2025
3.8.0 1,512 3/5/2025
3.7.0 26,808 2/8/2025
3.6.2 72,907 12/9/2024
3.6.1 57,084 11/21/2024
3.6.0 131,137 8/8/2024
3.5.4 9,428 8/1/2024
3.5.3 2,196 7/31/2024
3.5.2 8,122 7/15/2024
3.5.1 9,489 6/19/2024
3.5.0 7,601 5/15/2024
3.4.0 4,160 4/19/2024
3.3.1 3,032 3/28/2024
3.3.0 38,077 2/12/2024
3.2.0 1,824 2/1/2024
3.1.0 21,764 11/19/2023
3.0.0 800 11/17/2023
3.0.0-beta.2 170 10/22/2023
3.0.0-beta.1 129 10/15/2023
2.19.0 152 5/19/2025
2.18.3 278 4/16/2025
2.18.2 204 4/3/2025
2.18.1 181 4/2/2025
2.18.0 197 3/27/2025
2.17.0 268 12/26/2024
2.16.0 11,697 4/29/2024
2.15.2 2,841 3/7/2024
2.15.1 836 2/12/2024
2.15.0 45,335 11/18/2023
2.14.0 1,110 11/14/2023
2.13.2 41,685 10/11/2023
2.13.1 3,452 9/29/2023
2.13.0 56,696 9/25/2023
2.12.7 21,042 8/9/2023
2.12.6 43,330 7/23/2023
2.12.4 4,771 7/17/2023
2.12.3 17,118 7/6/2023
2.12.2 109,760 3/31/2023
2.12.1 25,891 3/22/2023
2.12.0 10,944 1/29/2023
2.11.0 40,150 10/13/2022
2.10.4 23,455 10/7/2022
2.10.3 2,923 9/16/2022
2.10.2 53,463 6/22/2022
2.10.1 68,756 3/9/2022
2.10.0 41,233 2/23/2022
2.9.4 22,562 12/5/2021
2.9.3 3,536 11/26/2021
2.9.2 1,235 11/11/2021
2.9.1 29,887 10/14/2021
2.9.0 2,104 9/29/2021
2.8.1 5,437 9/9/2021
2.8.0 2,208 9/2/2021
2.7.2 9,579 8/26/2021
2.7.1 7,433 8/6/2021
2.7.0 7,284 7/20/2021
2.6.3 2,094 7/15/2021
2.6.2 1,992 7/9/2021
2.6.1 1,367 7/6/2021
2.6.0 6,711 7/5/2021
2.5.3 1,190 7/2/2021
2.5.2 1,329 6/30/2021
2.5.1 1,628 6/29/2021
2.5.0 1,271 6/27/2021
2.4.1 1,475 6/25/2021
2.4.0 2,645 6/14/2021
2.3.3 1,584 6/8/2021
2.3.1 2,791 5/11/2021
2.3.0 1,341 5/11/2021
2.2.0 2,224 4/22/2021
2.1.1 1,316 4/14/2021
2.1.0 4,642 3/16/2021
2.0.4 2,312 3/5/2021
2.0.3 1,310 3/5/2021
2.0.2 2,644 2/23/2021
2.0.1 9,314 2/17/2021
2.0.0 1,312 2/12/2021
1.8.5 9,414 2/10/2021
1.8.4 26,382 1/25/2021
1.8.3 2,367 1/6/2021
1.8.2 3,382 12/17/2020
1.8.1 4,444 12/15/2020
1.8.0 4,031 12/10/2020
1.7.8 102,106 5/17/2021
1.7.7 1,229 5/17/2021
1.7.6 1,303 5/17/2021
1.7.5 3,152 10/30/2020
1.7.4 6,801 10/19/2020
1.7.3 29,201 10/13/2020
1.7.2 1,792 10/2/2020
1.7.1 4,986 9/17/2020
1.7.0 1,618 9/14/2020
1.6.3 1,424 9/12/2020
1.6.2 1,521 9/3/2020
1.6.1 1,383 9/2/2020
1.6.0 1,530 8/30/2020
1.5.0 10,825 8/3/2020
1.4.3 2,508 7/9/2020
1.4.2 1,587 7/2/2020
1.4.1 1,302 6/29/2020
1.4.0 1,855 6/17/2020
1.3.0 1,506 6/14/2020
1.2.0 2,871 5/27/2020
1.1.1 1,405 5/22/2020
1.1.0 2,000 5/15/2020
1.0.1 1,365 5/14/2020
1.0.0 1,382 5/14/2020
0.18.4 1,927 4/21/2020
0.18.3 1,566 4/18/2020
0.18.2 3,295 4/8/2020
0.18.1 1,399 4/7/2020
0.18.0 1,597 4/1/2020
0.17.0 1,592 3/21/2020
0.16.0 1,436 3/19/2020
0.15.0 2,022 2/28/2020
0.14.1 1,423 2/25/2020
0.14.0 1,359 2/21/2020
0.13.1 1,395 2/19/2020
0.13.0 1,753 2/14/2020
0.12.0 2,102 12/31/2019
0.11.2 1,588 12/23/2019
0.11.1 1,508 12/20/2019
0.11.0 1,453 12/16/2019
0.10.0 1,531 11/17/2019
0.9.1 1,587 11/14/2019
0.9.0 1,508 11/12/2019
0.8.2 1,533 11/9/2019
0.8.1 1,524 11/4/2019
0.8.0 1,455 11/2/2019
0.7.0 1,482 10/25/2019
0.6.0 1,545 10/16/2019
0.5.0 1,473 10/15/2019
0.4.0 1,501 10/8/2019
0.3.0 1,477 10/7/2019
0.2.0 1,594 9/30/2019
0.1.5 1,338 9/13/2019
0.1.4 1,303 9/9/2019
0.1.3 1,276 9/9/2019
0.1.2 1,238 9/9/2019
0.1.1 1,355 9/6/2019
0.1.0 1,401 9/6/2019

Fix for stuck pipeline if the maxMessageSize is less than 32KB