app.py 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. # -*- coding: utf-8 -*-
  2. # @Time : 2024/6/6
  3. # @Author : 魏志亮
  4. from apscheduler.executors.pool import ThreadPoolExecutor
  5. from flask import Flask
  6. import datetime
  7. from flask_apscheduler import APScheduler
  8. class Config(object):
  9. JOBS = [
  10. {
  11. 'id': 'job1',
  12. 'func': 'schedule_service:run_schedule',
  13. 'args': (0, 3),
  14. 'trigger': 'interval',
  15. 'seconds': 60
  16. }
  17. ]
  18. SCHEDULER_EXECUTORS = {'default': ThreadPoolExecutor(6)}
  19. # 调度器开关开启
  20. SCHEDULER_API_ENABLED = True
  21. # 设置容错时间为 2min
  22. # coalesce积攒得任务跑几次,在时间允许得范围内 True:默认最后一次,False:在时间允许范围内全部提交
  23. # max_instances 同时允许并发的最大并发量
  24. # misfire_grace_time 如果重启任务在这个时间范围内,就能继续重启
  25. SCHEDULER_JOB_DEFAULTS = {'coalesce': False, 'max_instances': 2, 'misfire_grace_time': 60}
  26. # 配置时区
  27. SCHEDULER_TIMEZONE = 'Asia/Shanghai'
  28. if __name__ == '__main__':
  29. app = Flask(__name__)
  30. app.config.from_object(Config())
  31. scheduler = APScheduler()
  32. scheduler.init_app(app)
  33. scheduler.start()
  34. app.run()