问题描述
我已经构建了一个python应用程序,并使用Flask
和Python
进行了部署。这是我代码的Skelton。
#app.py
@app.route('/',methods=['GET'])
def login():
'''login process'''
@app.route('/reset-password',methods=['GET'])
def reset_password():
'''reset password process'''
@app.route('/add-psa',methods=['GET'])
def add_user():
'''add user process'''
if __name__ == '__main__':
app.debug = True
app.run(use_reloader=False,threaded=True)
已部署的应用程序在Heroku中工作正常。但有时需要30秒钟以上才能做出响应,根据Heroku doc,这意味着H12 error
。因此,我按照this教程进行了后台作业。
这是我到目前为止所做的
#worker.py
import os
import redis
from rq import Worker,Queue,Connection
listen = ['high','default','low']
redis_url = os.getenv('REDISTOGO_URL','redis://localhost:6379')
conn = redis.from_url(redis_url)
if __name__ == '__main__':
with Connection(conn):
worker = Worker(map(Queue,listen))
worker.work()
下一步...
#utils.py
import requests
def count_words_at_url(url):
resp = requests.get(url)
return len(resp.text.split())
我还更改了Procfile
和requirements.txt
我想在后台运行我的reset_password()
,因为它花费的时间超过30seconds
。有人可以帮助我吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)