से हटा दिए गए हैं, मैं Django 1.6
, RabbitMQ 3.5.6
, celery 3.1.19
का उपयोग कर रहा हूं।ईटी के साथ सेलेरी कार्य खरगोश एमक्यू
एक आवधिक कार्य है जो हर 30 सेकंड चलाता है और दिए गए eta
पैरामीटर के साथ 200 कार्य बनाता है। अजवाइन कार्यकर्ता चलाने के बाद, धीरे-धीरे कतार खरगोश एमक्यू में बनाई जाती है और मुझे लगभग 1200 अनुसूचित कार्यों को निकाल दिया जाने का इंतजार है। फिर, मैं अजवाइन कार्यकर्ता को पुनरारंभ करता हूं और सभी प्रतीक्षा 1200 निर्धारित कार्यों को RabbitMQ से निकाल दिया जाता है।
मैं कैसे कार्य बनाने: python manage.py celery worker -Q my_tasks_1 -A my_app -l
CELERY_ACKS_LATE
Django सेटिंग्स में True
पर सेट है: my_task.apply_async((arg1, arg2), eta=my_object.time_in_future)
मैं इस तरह कार्यकर्ता चलाते हैं। मुझे कोई संभावित कारण नहीं मिला।
क्या मुझे कार्यकर्ता को एक अलग कॉन्फ़िगरेशन/ध्वज/पैरामीटर के साथ चलाया जाना चाहिए? कोई उपाय?
1) क्या आप वाकई केवल कार्यकर्ता को पूरे खरगोश सर्वर को पुनरारंभ नहीं करते हैं? 2) हो सकता है कि आप कुछ कार्य 'ttl' समय निर्धारित करें और यह इस समय के बाद बस हटा दिया जाता है? – matino
1) मुझे यकीन है कि केवल श्रमिकों को पुनरारंभ किया जाएगा। 2) किसी भी विन्यास में कार्य करने के लिए कोई ttl सेट नहीं है। यह डिफ़ॉल्ट है। लेकिन अगर मैं श्रमिकों को खुला रखता हूं, तो कार्य कतार में रहता है। –
क्या आप डीबग लॉग साझा कर सकते हैं? –