【问题标题】:Flask scheduled server refresh烧瓶计划的服务器刷新
【发布时间】:2015-07-12 11:55:17
【问题描述】:

我正在使用 Flask 创建一个网站,我希望每六个小时重新计算一次页面上的结果。我尝试使用schedule,但应用程序一旦开始运行就不会关闭,以允许计划执行的任务。如何让应用关闭,以便其他计划任务可以运行?

def main():
    run_process()
    return "Calculations based on latest update completed."

def display():
    app.run(host='0.0.0.0', port=8000, debug=False)

def job():
    main()
    display()

if __name__ == '__main__':
    schedule.every(6).hour.do(job)

    while True:
        schedule.run_pending()

【问题讨论】:

    标签: python flask scheduled-tasks


    【解决方案1】:

    我会使用 Flask-script 创建一个管理命令,然后让 cron 每 6 小时运行一次管理命令。我假设您希望每 6 小时更新一次数据库中的数据,然后在您的网站上提供该数据。

    更多关于 Flask-script 的信息可以在here.找到 如果您使用 hello 函数查看第一个示例。您可以将 hello 函数更改为要运行的代码。

    要运行该命令,如果您的 python 文件名为 manage.py 并且您的函数名为 hello() 您可以让 cron 运行以下命令:

    python manage.py hello
    

    【讨论】:

      猜你喜欢
      • 2019-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-26
      相关资源
      最近更新 更多