@Mehdi Abaakouk, @Alexei Kornienko, My patch about keepalive options had
been merged into pyamqp[1] ,  it is very useful for aware the connection
being terminated and raise a socket error exception.

We can add some keepalive options in oslo.messaging[2] and pass these
keepalive options to kombu pyamqp transport,    so the idle connections
in consumer will aware the connection being terminated and the consumer
will  catch the socket Exception, and reconnect again.

The method of tcp keepalive is  simpler than  heartbeat checking thread.
I had used this approach  in multiple production environments  more than
a year, it is effective.

[1]  
https://github.com/celery/py-amqp/commit/b9a6601a93927449fa6f524750e3842cc5c181bd
[2]  
https://github.com/zhurongze/oslo.messaging/commit/c04d9b18536e8032a79c1889adde7beaf517adaf

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/856764

Title:
  RabbitMQ connections lack heartbeat or TCP keepalives

To manage notifications about this bug go to:
https://bugs.launchpad.net/ceilometer/+bug/856764/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to