klg-mq-koa

2019-12-03 admin

klg-mq-koa是什么

什么是klg-mq-koa,rabbitmq koa middleware

klg-mq-koa使用教程帮助文档

klg-mq-koa

rabbitmq 中间件 for koa,方便把异步接口快速接入 MQ。

Koa 服务与 MQ 服务的连接方式

消息队列(Message queue)一般被我们用来做服务间通信,在发送方和消费方的速率不对等的时候,MQ 起到了缓冲的作用。 一般情况下,我们是这样接入 MQ 的

见 normal.puml

这样需要服务A B 两边都对接 MQ,为了简化接入流程,我们更倾向于使用这样方式对接

见 actual.puml

这种方式的好处的,只要服务B 对接 MQ ,而且原有服务 A B 直接的 http 连接方式不需要做任何修改

QuickStart

原接口:

router.post('/user/:userId', endPoint)

接入 MQ:

const mq = new KoaRabbitmq('amqp://joda:5672', 'test') // test 是 mq channel 前缀,用于区分不同服务
router.post('/user/:userId', mq.queue(endPoint, {prefetch: 2}))  // prefetch 表示消费速率

Test

$ npm i
$ npm test

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处。

转载请注明:文章转载自 JavaScript中文网 [https://www.javascriptcn.com]

本文地址:https://www.javascriptcn.com/read-80303.html

文章标题:klg-mq-koa

回到顶部