我有两个应用程序服务器(都有django应用程序)。两个芹菜工都在运行。 RabbitMQ服务器设置在第三个不同的服务器上。Celery - [Errno 111]当使用延迟触发芹菜任务时连接被拒绝()
当任何测试任务是从任何两个应用程序的服务器的使用,通过外壳delay()
执行,他们得到执行罚款。
如果相同的任务从server1的触发从浏览器(通过Ajax)再次工作正常。
但在服务器2(具有相同的配置和代码server1的),当相同的任务从它给浏览器触发的情况下[错误111]连接被拒绝错误。
一些在Server1或Server2上安装的软件包是:
celery 3.1.18
amqp 1.4.9
django 1.8.5
任何人可以帮助我这个?谢谢!
的错误跟踪如下:
File "../lib/python2.7/site-packages/celery/app/task.py" in delay 453. return self.apply_async(args, kwargs) File "../lib/python2.7/site-packages/celery/app/task.py" in apply_async 559. **dict(self._get_exec_options(), **options) File "../lib/python2.7/site-packages/celery/app/base.py" in send_task 353. reply_to=reply_to or self.oid, **options File "../lib/python2.7/site-packages/celery/app/amqp.py" in publish_task 305. **kwargs File "../lib/python2.7/site-packages/kombu/messaging.py" in publish 172. routing_key, mandatory, immediate, exchange, declare) File "../lib/python2.7/site-packages/kombu/connection.py" in _ensured 457. interval_max) File "../lib/python2.7/site-packages/kombu/connection.py" in ensure_connection 369. interval_start, interval_step, interval_max, callback) File "../lib/python2.7/site-packages/kombu/utils/__init__.py" in retry_over_time 246. return fun(*args, **kwargs) File "../local/lib/python2.7/site-packages/kombu/connection.py" in connect 237. return self.connection File "../lib/python2.7/site-packages/kombu/connection.py" in connection 742. self._connection = self._establish_connection() File "../lib/python2.7/site-packages/kombu/connection.py" in _establish_connection 697. conn = self.transport.establish_connection() File "../lib/python2.7/site-packages/kombu/transport/pyamqp.py" in establish_connection 116. conn = self.Connection(**opts) File "../lib/python2.7/site-packages/amqp/connection.py" in __init__ 165. self.transport = self.Transport(host, connect_timeout, ssl) File "../lib/python2.7/site-packages/amqp/connection.py" in Transport 186. return create_transport(host, connect_timeout, ssl) File "../lib/python2.7/site-packages/amqp/transport.py" in create_transport 299. return TCPTransport(host, connect_timeout) File "../lib/python2.7/site-packages/amqp/transport.py" in __init__ 95. raise socket.error(last_err)
你的RabbitMQ没有运行或不可访问, –
没有RabbitMQ的运行良好。否则,通过python shell也不会执行任务。 – ndk
它看起来像是阻止了从server2到rabbitmq服务的网络连接 - 您应该尝试使用基本网络诊断工具来弄清楚发生了什么。对于非常基本的尝试,例如telnet从服务器2发送到端口5672上的rabbitmq主机 – scytale