
6

Github GitHub - fsharplang-ru/pulsar-client-dotnet: Apache Pulsar native client...
source link: https://github.com/fsharplang-ru/pulsar-client-dotnet
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

pulsar-client-dotnet
Contributions and stars ★ are most welcome!
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 (from https://github.com/apache/pulsar/wiki/Client-Features-Matrix):
- Basic Producer/Consumer API
- Partitioned topics
- Batching
- Compression
- Authentication (token, tls)
- Reader API
- Proxy Support
- Effectively-Once
- Schema
- Consumer seek
- Multi-topics consumer
- Topics regex consumer
- Compacted topics
- User defined properties producer/consumer
- Reader hasMessageAvailable
- Hostname verification
- Multi Hosts Service Url support
- Key_shared
- key based batcher
- Negative Acknowledge
- Delayed Delivery Messages
- Dead Letter Policy
- Interceptors
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
public/default
namespace with default settings - Ensure
public/retention
namespace with time or storage size retention configured
- Install pulsar cluster:
- Send a Pull Request
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK