rabbitmq取消自动重连_node.js rabbitmq(amqplib) 断线重连

rabbitmq

我用的是amqplib 这个包,github上的项目名是amqp.node

这个包貌似是没有实现断线自动重连的,看了看issues,也和我自己实现的版本差不多。

思路

思路主要是两个地方:

connection实例的error事件.

初始化的promise链报错.

针对这两种情况都去尝试重新连接,因为可能不能立即恢复,所以得隔一段事件重连一次,直到恢复为止。

封装实现

/**

* Mq Factory

* @authors yanjixiong

* @date 2016-07-22 09:56:19

*/

var Connection = require('./Connection');

var Channel = require('./Channel');

var Exchange = require('./Exchange');

var Queue = require('./Queue');

var Consume = require('./Consume');

var ExchangeTypes = require('../constant').ExchangeTypes;

var RouteKey = require('../constant').RouteKey;

var config = require('../../config');

var log = require

你可能感兴趣的:(rabbitmq取消自动重连)