की वजह से अच्छी तरह से संचालित नहीं हुआ है मुझे rabbitmq-server पर अजवाइन निष्पादित करने में समस्या है। मैंने a link खोजा और पाया, लेकिन यह मेरी मदद नहीं करता है। मेरा एनवी उबंटू 14.04, पायथन 2.7.6, अजवाइन 3.1.15, Django 1.7 है। a link का संदर्भ, मैंने स्थानीय रूप से rabbitmq-server स्थापित किया। मैंने उपयोगकर्ता जोड़ा, rabbitmq-server में vhost और अनुमति सेट करें।सेलरी 104
$ sudo rabbitmqctl add_user tonyg password
$ sudo rabbitmqctl add_vhost vir_host
$ sudo rabbitmqctl set_permissions -p vir_host tonyg ".*" ".*" ".*"
डीजेंगो में मेरी अजवाइन की सेटिंग निम्नानुसार है।
BROKER_URL = 'amqp://tonyg:[email protected]:5672//vir_host'
CELERY_RESULT_BACKEND = 'amqp://tonyg:[email protected]:5672//vir_host'
CELERY_ACCEPT_CONTENT = [u'application/x-python-serialize', u'image/jpeg', u'image/bmp', u'image/png', u'image/tiff']
CELERY_TIMEZONE = 'Asia/Tokyo'
CELERY_ENABLE_UTC = True
CELERY_IGNORE_RESULT = False
मैं डिफ़ॉल्ट कॉन्फ़िगरेशन के अलावा rabbitmq-server के बारे में कुछ भी सेट नहीं करता हूं।
मैंने इस तरह से अजवाइन को निष्पादित किया।
$ celery -A MyProj worker -l info
-------------- [email protected] v3.1.15 (Cipater)
---- **** -----
--- * *** * -- Linux-3.13.0-36-generic-x86_64-with-Ubuntu-14.04-trusty
-- * - **** ---
- ** ---------- [config]
- ** ---------- .> app: MyProj:0x7f7453328b10
- ** ---------- .> transport: amqp://tonyg:**@localhost:5672//vir_host
- ** ---------- .> results: amqp://tonyg:[email protected]:5672//vir_host
- *** --- * --- .> concurrency: 1 (prefork)
-- ******* ----
--- ***** ----- [queues]
-------------- .> celery exchange=celery(direct) key=celery
[tasks]
. MyProj.tasks. ......
. MyProj.tasks. ......
[2014-10-29 15:07:50,241: ERROR/MainProcess] consumer: Cannot connect to amqp://tonyg:**@127.0.0.1:5672//vir_host: [Errno 104] Connection reset by peer.
Trying again in 2.00 seconds...
[2014-10-29 15:07:55,251: ERROR/MainProcess] consumer: Cannot connect to amqp://tonyg:**@127.0.0.1:5672//vir_host: [Errno 104] Connection reset by peer.
Trying again in 4.00 seconds...
जब मैं डिफ़ॉल्ट अतिथि पहचानकर्ता का उपयोग करके अजवाइन निर्धारित करते हैं,
BROKER_URL = 'amqp://guest:[email protected]:5672//'
CELERY_RESULT_BACKEND = 'amqp://guest:[email protected]:5672//'
यह अच्छी तरह से काम करता है। मुझे नहीं पता क्यों। क्या कोई मेरी मदद कर सकता है? धन्यवाद।
यूआरएल सही है। लेकिन वर्चुअल होस्ट के माध्यम से कनेक्ट करने के लिए उपयोगकर्ता के पास व्यवस्थापकीय विशेषाधिकार नहीं हैं। – ChillarAnand
@ क्रिज़िट्टोफ स्ज़ुलरज़ आपको बहुत बहुत धन्यवाद। मैंने सोचा कि मैंने कोशिश की है amqp: // tonyg: ** @ localhost: 5672/vir_host। लेकिन, मैंने फिर कोशिश की। यह वास्तव में कारगर है!!! मैंने मूर्खतापूर्ण गलती की। लेकिन, मैं जानना चाहता हूं कि क्यों सेटिंग (amqp: // tonyg: ** @ localhost: 5672/vir_host) मैक ओएस एक्स में अच्छी तरह से काम करता है। वैसे भी, आपको बहुत धन्यवाद। – BlueFrog
मुझे सवाल नहीं मिला है। 'amqp: // tonyg: ** @ localhost: 5672/vir_host' अच्छी तरह से चल रहा है क्योंकि यह आपके द्वारा बनाए गए vhost के लिए एक वैध यूआरएल है। दो स्लेश वाले एक वैध नहीं है, जब तक कि vhost को '/ vir_host' कहा जाता है जो मामला नहीं है। –