Add delays before reconnect to RabbitMQ
Change-Id: I0b51a4f9933547864129b18d8f50e8049e79c105
This commit is contained in:
parent
4cb0fd1e17
commit
1e0999b7ad
|
@ -52,12 +52,14 @@ class TaskResultHandlerService(service.Service):
|
|||
return MqClient(**connection_params)
|
||||
|
||||
def _handle_results(self):
|
||||
reconnect_delay = 1
|
||||
while True:
|
||||
try:
|
||||
with self._create_mq_client() as mqClient:
|
||||
mqClient.declare(conf.results_exchange, conf.results_queue)
|
||||
with mqClient.open(conf.results_queue,
|
||||
prefetch_count=100) as results_sb:
|
||||
reconnect_delay = 1
|
||||
while True:
|
||||
result = results_sb.get_message(timeout=1)
|
||||
if result:
|
||||
|
@ -65,13 +67,18 @@ class TaskResultHandlerService(service.Service):
|
|||
except Exception as ex:
|
||||
log.exception(ex)
|
||||
|
||||
eventlet.sleep(reconnect_delay)
|
||||
reconnect_delay = min(reconnect_delay * 2, 60)
|
||||
|
||||
def _handle_reports(self):
|
||||
reconnect_delay = 1
|
||||
while True:
|
||||
try:
|
||||
with self._create_mq_client() as mqClient:
|
||||
mqClient.declare(conf.reports_exchange, conf.reports_queue)
|
||||
with mqClient.open(conf.reports_queue,
|
||||
prefetch_count=100) as reports_sb:
|
||||
reconnect_delay = 1
|
||||
while True:
|
||||
report = reports_sb.get_message(timeout=1)
|
||||
if report:
|
||||
|
@ -79,6 +86,9 @@ class TaskResultHandlerService(service.Service):
|
|||
except Exception as ex:
|
||||
log.exception(ex)
|
||||
|
||||
eventlet.sleep(reconnect_delay)
|
||||
reconnect_delay = min(reconnect_delay * 2, 60)
|
||||
|
||||
|
||||
@handle
|
||||
def handle_result(message):
|
||||
|
|
Loading…
Reference in New Issue