import dynaconf import pika from retrying import retry @retry(stop_max_attempt_number=3, wait_random_min=100, wait_random_max=1000) def rabbitmq_connect(): config = dynaconf.settings.get('RABBITMQ', {}) amqp_config = dict(user=config.get('USER'), password=config.get('PASSWORD'), host=config.get('HOST'), port=config.get('PORT')) if not amqp_config: raise ConnectionError('rabbitmq配置错误') connection = pika.BlockingConnection( pika.URLParameters('amqp://{user}:{password}@{host}:{port}/%2F'.format(**amqp_config))) return connection