-
Notifications
You must be signed in to change notification settings - Fork 0
/
server.js
75 lines (66 loc) · 1.89 KB
/
server.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
const nats = require('nats').connect();
const Hemera = require('nats-hemera');
const hemeraNatsStreaming = require('hemera-nats-streaming');
const hemeraJoi = require('hemera-joi');
const hemeraWeb = require('hemera-web');
const hemera = new Hemera(nats, {
logLevel: 'info'
});
hemera.use(hemeraJoi);
hemera.use(hemeraNatsStreaming, {
clusterId: 'test-cluster',
clientId: 'yii2',
opts: {} // object with NATS/STAN options
});
hemera.use(hemeraWeb, {
port: 3999,
host: '127.0.0.1',
// pattern: {
// topic: 'math'
// }
});
// hemera.ready(function () {
// hemera.add({
// topic: 'math',
// cmd: 'add'
// }, function (resp, cb) {
// console.log('request', resp);
// cb(null, resp.a + resp.b);
// });
// // hemera.act({
// // topic: 'math',
// // cmd: 'add',
// // a: 1,
// // b: 2
// // }, function (err, resp) {
// // console.log('Result', resp);
// // });
// // hemera.act(
// // {
// // topic: 'nats-streaming',
// // cmd: 'subscribe',
// // subject: 'orderCreated',
// // options: {
// // setAckWait: 10000,
// // setDeliverAllAvailable: true,
// // setDurableName: 'orderCreated'
// // }
// // },
// // function(err, resp) {
// // this.log.info(resp, 'ACK');
// // }
// // );
// // /**
// // * Add listener for nats-streaming-events
// // */
// // hemera.add(
// // {
// // topic: 'nats-streaming.orderCreated'
// // },
// // function(req, reply) {
// // this.log.info(req, 'RECEIVED');
// // // ACK Message, if you pass an error the message is redelivered every 10 seconds
// // reply(/* new Error('test') */);
// // }
// // );
// });