Typography

活版印字


  • Home
  • Archive
  • Categories
  • Tags
  •  

© 2020 alincode

Theme Typography by Makito

Proudly published with Hexo

Redis MQ

Posted at 2016-10-16 Redis MQ Koa2 

範例原始碼

安裝

1
2
3
4
5
6
7
8
npm init -y
npm install --save-dev babel-cli
npm install --save-dev babel-preset-es2015
npm install --save-dev babel-preset-stage-0
npm install --save babel-polyfill
npm install --save-dev koa@2
npm install --save rsmq
npm install --save rsmq-worker

送訊息到MQ

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import RedisSMQ from "rsmq";

const rsmq = new RedisSMQ({
host: process.env.REDIS_HOST || '127.0.0.1',
port: process.env.REDIS_PORT || 6379
});

function send(qname, message) {
rsmq.sendMessage({
qname: qname,
message: message
}, function(error, resp) {
if (error) return console.error(error);
if (resp) return console.log("ID:", resp);
});
}

send(channelName, '098765 test');

監聽事件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import RSMQWorker from "rsmq-worker";
var channelName = 'myqueue';
var worker = new RSMQWorker(channelName);

worker.on("message", function(msg, next, id) {
console.log("Message id : " + id);
console.log(msg);
next()
});

worker.on('error', function(err, msg) {
console.log("ERROR", err, msg.id);
});
worker.on('exceeded', function(msg) {
console.log("EXCEEDED", msg.id);
});
worker.on('timeout', function(msg) {
console.log("TIMEOUT", msg.id, msg.rc);
});

worker.start();

參考

  • KOA
  • RSMQ
  • RSMA Worker

Share 

 Previous post: 初探 ThinkJS 2.x (1) Next post: Date 轉換 moment 格式 

© 2020 alincode

Theme Typography by Makito

Proudly published with Hexo