2012-07-24 15 views
15

तो अभी मेरे पास देरी_बॉज का कार्यान्वयन है जो मेरे स्थानीय विकास पर्यावरण पर पूरी तरह से काम करता है। मेरी मशीन पर कार्यकर्ता शुरू करने के लिए, मैं बस rake jobs:work चलाता हूं और यह पूरी तरह से काम करता है।Heroku पर देरी_job कार्यकर्ता चल रहा है?

heroku पर काम करने में देरी_job प्राप्त करने के लिए, मैं काफी कमांड का उपयोग कर रहा हूं: heroku run rake jobs:work। यह समाधान काम करता है, बिना मुझे हेरोोकू के लिए कार्यकर्ता लागत के लिए कुछ भी भुगतान करना पड़ता है, लेकिन मुझे अपनी कमांड प्रॉम्प्ट विंडो खोलना है या फिर जब मैं इसे बंद करता हूं तो देरी_job कर्मचारी बंद हो जाता है। जब मैं कमांड विंडो बंद करता हूं तब भी इस देरी_job कार्यकर्ता को स्थायी रूप से रखने के लिए कोई आदेश है? या इसके बारे में जाने का एक और बेहतर तरीका है?

उत्तर

9

अपने Procfile को

worker: rake jobs:work 

जोड़ें।

संपादित करें:

यहां तक ​​कि अगर आप इसे अपने कंसोल से चलाने के आप कार्यकर्ता dyno 'खरीदें' लेकिन Heroku दूसरा Biling प्रति है। तो आप भुगतान नहीं करते हैं क्योंकि आपके पास 750h मुफ्त है, और महीने में सबसे खराब मामले में 744h है, इसलिए आपके अतिरिक्त डायनो, शेड्यूलर कार्यों आदि के लिए आपके पास 6h निःशुल्क है।

+2

प्रलेखन यहां है: https://devcenter.heroku.com/articles/delayed-job – zsquare

+5

भले ही आप इसे अपने कंसोल से चलाते हैं, आप 'कार्यकर्ता' dyno खरीदते हैं लेकिन Heroku प्रति सेकेंड द्विभाषी है, इसलिए आप भुगतान नहीं करते हैं क्योंकि आपके पास 750h निशुल्क है, और महीने में सबसे खराब मामले में 744h है, इसलिए आपके अतिरिक्त डिनो, शेड्यूलर कार्यों और इसलिए ओ के लिए आपके पास 6h निःशुल्क है एन। – Hauleth

1

मैंने इसे अभी तक व्यक्तिगत रूप से आजमाया नहीं है, लेकिन आपको nohup उपयोगी मिल सकता है। यह आपकी प्रक्रिया को चलाने की इजाजत देता है भले ही आपने अपनी टर्मिनल विंडो बंद कर दी हो। लिंक: http://linux.101hacks.com/unix/nohup-command/

13

मैं workless gem को उसकेोकू पर देरी की नौकरियों को चलाने के लिए अनुशंसा करता हूं। मैं अब इसका उपयोग करता हूं - यह मेरे लिए पूरी तरह से काम करता है, शून्य परेशानी और शून्य लागत पर।

मैंने hirefireapp भी उपयोग किया है जो स्केलिंग श्रमिकों पर नियंत्रण की बहुत अधिक डिग्री देता है। यह लागत, लेकिन एक ही हुकोकू कार्यकर्ता (एक महीने से अधिक) से कम लागत। मैं अब इसका उपयोग नहीं करता, लेकिन इसका इस्तेमाल किया है, और यह बहुत अच्छी तरह से काम किया है।

+0

मैंने वर्कलेस स्थापित किया और heroku चर को कॉन्फ़िगर किया। अब मुझे क्या करना चाहिए? ऐसा लगता है कि यह काम नहीं कर रहा है। –

+0

क्या आपने कॉन्फ़िगरेशन जोड़ा है (मान लीजिए कि आप देवदार पर हैं)? config.after_initialize कर विलंबित :: Job.scaler =: heroku_cedar अंत –

+0

@DamonMannion आप के लिए 5 क्या यह उत्तर – Kashiftufail

0

नौकरियों पर श्रमिकों को प्राप्त करने के लिए हेरोकू कंसोल का उपयोग केवल नौकरी के लिए एक अस्थायी dyno बनाना होगा। क्ली के बिना चल रही नौकरियों को रखने के लिए, आपको कमांड को प्रसंस्करण में @Lucaksz के रूप में सुझाव देना होगा। Heroku ps: पैमाने कार्यकर्ता = 1

अधिक जानकारी

तैनाती के बाद, आप भी dyno गठन पैमाने पर करने, के रूप में Heroku पता करने के लिए कितने dyno इस तरह की प्रक्रिया प्रकार पर रखा जाना चाहिए की जरूरत की जरूरत है यहां पढ़ा जा सकता है https://devcenter.heroku.com/articles/scaling

संबंधित मुद्दे