Apache Pulsar NodeJS Client

Clone this repo:
  1. f010fb2 Add Multi-Topic Support to Consumer (#130) by savearray2 · 6 weeks ago master
  2. 4b8a799 Adds Pattern/RegEx Support to Consumer (#125) by savearray2 · 8 weeks ago
  3. 1b8f8d9 Adds getProducerName and getTopic to Producer (#126) by Alan Hoffmeister · 8 weeks ago
  4. 52777a8 Adds deliverAt and deliverAfter support to Producer (#123) by savearray2 · 10 weeks ago
  5. dc0b4c8 Includes Support for ZSTD and SNAPPY Compression (#121) by savearray2 · 10 weeks ago

Pulsar Node.js client library

The Pulsar Node.js client can be used to create Pulsar producers and consumers in Node.js.

Requirements

Pulsar Node.js client library is based on the C++ client library. Follow the instructions for C++ library for installing the binaries through RPM, Deb or Homebrew packages.

(Note: you will need to install not only the pulsar-client library but also the pulsar-client-dev library)

Also, this library works only in Node.js 10.x or later because it uses the node-addon-api module to wrap the C++ library.

Compatibility

Compatibility between each version of the Node.js client and the C++ client is as follows:

Node.js clientC++ client
1.0.02.3.0 or later
1.1.02.4.0 or later
1.2.02.5.0 or later

If an incompatible version of the C++ client is installed, you may fail to build or run this library.

How to install

Please install pulsar-client in your project:

$ npm install pulsar-client

Typescript Definitions

$ npm install @types/pulsar-client --save-dev

Sample code

Please refer to examples.

How to build

Install dependent npm modules and build Pulsar client library:

$ git clone https://github.com/apache/pulsar-client-node.git
$ cd pulsar-client-node
$ npm install

Rebuild Pulsar client library:

$ npm run build