laravel - 在指定时间后更改数据库中的数据
问题描述
在用户单击按钮后的一定时间内,我需要更改数据库中的一些数据。
例如,有一个sessions
带有is_active
(默认值0
)字段和两个按钮的表。单击第一个按钮后,该字段必须相等1
5 分钟;单击第二个按钮字段后必须0
立即相等。
首先,我认为队列或任务调度可能是解决方案,但我不明白它是如何工作的
Laravel甚至可以做到这一点吗?
解决方案
是的,您可以借助数据库的一些帮助。您可以定义一次运行一次的计划,并且可以在用户单击按钮时将记录推送到数据库。然后在计划任务上,检查当时是否有任何任务需要运行,或者过去的时刻等。然后从数据库中删除任务。请注意,在下一个查询中,如果仍有作业正在运行,请在表中添加一个额外的标志,表明作业已开始,并且不要再次运行。
推荐阅读
- scikit-learn - 在 sklearn.tree.DecisionTreeClassifier 中的树节点中呈现特征
- javascript - Html 表单到本地 xml 文件
- c++ - 仅在主对角线和对角线c ++上具有不同于零的元素的矩阵
- php - 如何在PHP的同一页面上下载根据ajax请求创建的excel文件
- ios - 未在 iOS 14.0 及更高版本上下载的临时分布式应用程序
- python - 从 .json 文件生成的数据框,“日期”列被更改(显示图片)我该如何防止这种情况?
- tensorflow - 有没有办法在您的 google colab 驱动器满载的情况下生成 .tfrecord 文件?
- powershell - Powershell 差异和查找值
- python - 将 TDMS 文件转换为 XLSX
- python - Python 内置函数,例如 any