簡體   English   中英

在Heroku上安裝Celery時出現“ [[Errno 111]連接被拒絕”錯誤

[英]Get “[Errno 111] Connection refused” error when mount Celery on Heroku

我試圖使用Celery為Django項目編寫后端異步過程。 我將Rabbitamq用作我的任務隊列,同時將Cloudamqp與Heroku一起使用。
問題是:整個項目可以在我自己的筆記本電腦上完美運行(使用localhost進行測試),而不能在生產服務器上運行。

這是我收到的錯誤消息: [Errno 111] Connection refused

然后我做了一些研究,我可能是錯的,但是問題似乎是我已經達到可以使用工作人員數量的限制,因為我現在正在為Heroku使用免費帳戶。
我讀到以下內容:“但是請記住,如果您使用的是免費計划,請調整BROKER_POOL_LIMIT。將其設置為1,就可以了。如果您遇到連接問題,請嘗試減少網絡工作者和celery的並發性工人。” 但我不確定該怎么做。

這是我的setting.py:

    BROKER_URL="amqp://paswzaog:0TwC3i7cBdTAKA9JE57EMm1xUzovFbry@turtle.rmq.cloudamqp.com/paswzaog"
    BROKER_POOL_LIMIT = 1
    CELERY_ACCEPT_CONTENT = ['json']
    CELERY_TASK_SERIALIZER = 'json'
    CELERY_RESULT_SERIALIZER = 'json'
    CELERY_RESULT_BACKEND='djcelery.backends.database:DatabaseBackend'
    CELERY_BEAT_SCHEDULER = 'djcelery.schedulers.DatabaseScheduler'
    CELERY_RESULT_BACKEND = 'amqp'
    CELERY_TASK_RESULT_EXPIRES = 18000  # 5 hours.`

這是錯誤消息:

'[Errno 111] Connection refused
'/app/.heroku/python/bin',
'/app/.heroku/python/lib/python2.7/site-packages/setuptools-3.6-py2.7.egg',
'/app/.heroku/python/lib/python2.7/site-packages/pip-1.5.6-py2.7.egg',
'/app',
'/app/.heroku/python/lib/python27.zip',
'/app/.heroku/python/lib/python2.7',
'/app/.heroku/python/lib/python2.7/plat-linux2',
'/app/.heroku/python/lib/python2.7/lib-tk',
'/app/.heroku/python/lib/python2.7/lib-old',
'/app/.heroku/python/lib/python2.7/lib-dynload',
'/app/.heroku/python/lib/python2.7/site-packages',
'/app','

以前有人遇到過類似的問題嗎? 還是有人可以推薦有關如何在Heroku上設置Celery的詳細教程? 提前致謝!

您的憑據似乎無效。 或者,或者您有多個並發連接。

一個很好的測試方法是將您的Web服務器擴展到0(heroku scale web = 0),然后創建一個工作程序(heroku scale worker = 1)–然后將您的Heroku日志(heroku logs --tail)尾隨看看您的單工是否可以連接。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM