2017-01-28 91 views
3

我部署了一個Django應用程序使用免費版Heroku。現在我需要運行一些後臺任務,所以我選擇django-background-tasks。根據文檔,我必須在運行python manage.py runserver運行項目後運行python manage.py process_tasks命令。所以我添加Procfile如下
如何在不使用信用卡或沒有錢的情況下在Heroku中安排Django後臺任務?

worker: python manage.py process_tasks 
web: gunicorn CYC_Heroku.wsgi 

但是,我不能規模應用的原因,我使用的是免費版本。那麼,我可以做同樣的沒有付錢/沒有信用卡 ??

+0

[運行Heroku後臺任務,只有1個網頁動態和0個工作者dynos]可能的副本(http://stackoverflow.com/questions/12634447/running-heroku-background-tasks-with-only-1-web- dyno-and-0-worker-dynos) –

回答

1

實際上,您現在可以使用APScheduler在heroku中設置一個時鐘進程。

我剛試過,它的效果很好。

您可以根據自己的喜好設置時間,也可以設置1分鐘。

它是免費的。

+0

你應該小心。 Heroku有時並不運行,Heroku自己也確認了這個問題。 –

2

Heroku Scheduler將允許您以下列頻率之一免費運行後臺任務:每10分鐘,每小時或每天。它將使用與您的網頁動態調音臺相同的dyno類型,所以如果您使用免費的動態調音臺來運行您的應用程序,它也將使用免費的動態調音臺來運行您的計劃任務。

將它添加到您的應用後,從Heroku應用的資源視圖中打開它。添加新作業並輸入python manage.py process_tasks作爲命令,然後選擇所需的頻率。

希望你可以爲你的用例做這個工作!

+0

這是說__Please驗證您的帳戶以安裝此附加計劃(請輸入信用卡)有關詳細信息,請參閱https://devcenter.heroku.com/categories/billing驗證現在https://heroku.com/verify__

+0

看起來您需要添加一張信用卡,但是您仍然可以免費使用該應用程序,正如我上面所解釋的。 –

+0

我發現** Heroku Scheduler **是免費的,但是,我們必須添加信用卡才能使用該應用程序。那麼還有其他解決方案嗎? –

相關問題