deepexi-rocketmq
Version:
Rocket MQ SDK support Aliyun Open Notification Service Client
83 lines (61 loc) • 2.34 kB
Markdown
rocketmq
=======
[![NPM version][npm-image]][npm-url]
[![build status][travis-image]][travis-url]
[![David deps][david-image]][david-url]
[![node version][node-image]][node-url]
[]: https://img.shields.io/npm/v/rocketmq.svg?style=flat-square
[]: https://npmjs.org/package/rocketmq
[]: https://img.shields.io/travis/yeliex/rocketmq.svg?style=flat-square
[]: https://travis-ci.org/yeliex/rocketmq
[]: https://img.shields.io/david/yeliex/rocketmq.svg?style=flat-square
[]: https://david-dm.org/yeliex/rocketmq
[]: https://img.shields.io/badge/node.js-%3E=_4.2.3-green.svg?style=flat-square
[]: http://nodejs.org/download/
Rocket MQ SDK support Aliyun Open Notification Service Client (base on opensource project [RocketMQ](https://github.com/alibaba/RocketMQ/tree/master/rocketmq-client))
Forked from [rocketmq](https://github.com/yeliex/rocketmq)
主要是更改了日志等级
## Install
```bash
npm install rocketmq --save
```
## Usage
consumer
```js
'use strict';
const Consumer = require('rocketmq').Consumer;
const consumer = new Consumer({
namesrvAddr: 'localhost:9876', // for rocket mq
accessKey: 'your-accesskey', // for aliyun-ons
secretKey: 'your-secretkey', // for aliyun-ons
onsAddr: '', // for aliyun-ons
consumerGroup: 'your-consumer-group', // for aliyun-ons
isBroadcast: false, // default is false, that mean messages will be pushed to consumer cluster only once.
});
consumer.subscribe(config.topic, '*', function*(msg) {
console.log(`receive message, msgId: ${msg.msgId}, body: ${msg.body.toString()}`)
});
consumer.on('error', err => console.log(err));
```
producer
```js
'use strict';
const Producer = require('rocketmq').Producer;
const Message = require('rocketmq').Message;
const producer = new Producer({
namesrvAddr: 'localhost:9876', // for rocket mq
accessKey: 'your-accesskey', // for aliyun-ons
secretKey: 'your-secretkey', // for aliyun-ons
producerGroup: 'your-producer-group', // for aliyun-ons
});
producer.ready(() => {
console.log('producer ready');
const msg = new Message('your-topic', // topic
'TagA', // tag
'Hello ONS !!! ' // body
);
producer.send(msg, (err, sendResult) => console.log(err, sendResult));
});
```
[](LICENSE)