6

Github GitHub - fsharplang-ru/pulsar-client-dotnet: Apache Pulsar native client...

 4 years ago
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.
neoserver,ios ssh client

pulsar-client-dotnet

Contributions and stars ★ are most welcome!

Pulsar.Client 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 (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
    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 public/default namespace with default settings
    5. Ensure public/retention namespace with time or storage size retention configured
  • Send a Pull Request

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK