go-amqp-reconnect
go-amqp-reconnect copied to clipboard
auto reconnecting example for github.com/streadway/amqp Connection & Channel
There are cases where options are needed, so I made it.
This is a race condition, only valid if Channel variable is volatile(Java keyword) or atomic https://github.com/isayme/go-amqp-reconnect/blob/e71660afb5caa71c7c1129231f53bb3bb8cbb21d/rabbitmq/rabbitmq.go#L48
Support for amqp.DialConfig could be a quick win
QueueDeclare with autoDelete true is not recreated after reconnection
The implementation of channel is very cpu intensive if we create channel per go routine. It would be more cpu friendy if we implement the reconnect over a connection and...
So I tried to create a rabbitmq transport element containing the connection, channel for sending, channel for consuming and declaring the queues and exchange. After losing connection it reconnects well,...