我在 PythonAnywhere 上有一个网站,它使用 Flask 和 Flask-SQLAlchemy 连接到 MySQL 数据库。用户可以使用网站将一个任务进行排队,作为记录保存到数据库中,然后一个单独的计划任务(Python 程序)检查数据库并处理每一条未处理的记录。
我遇到的问题是计划任务的数据库查询似乎只有在第一次运行时才找到新记录,但是如果我随后使用网站添加新任务,仍在运行的计划任务的重复数据库查询(每 5 秒)似乎没有检测到新记录。
关于这里可能发生什么的任何想法?
这是 bash 文件运行的代码:
def generate_any_pending_videos():
unfinished_videos = db.session.query(Video)\
.filter(~Video.status.has(VideoStatus.status.in_(['Error', 'Finished', 'Video deleted'])))\
.order_by(Video.datetime_created)\
.all()
for video in unfinished_videos:
try:
logging.info("Attempting to create video for video %d" % video.id)
generate_video(video)
except Exception as e:
logging.error(str(e))
if __name__ == '__main__':
while True:
generate_any_pending_videos()
time.sleep(5)
摇曳的蔷薇
GCT1015
相关分类