不活动后在服务器端更新MongoDB文档记录

问题描述

我的应用程序实时将文档添加和更新到MongoDB集合中,文档中的字段之一是status标签

status可以在作业运行时具有不同的值,例如initrunning,而在作业不运行时可以具有successcancelled这样的值运行中。

如果客户端被用户强行停止,则文档可能会停留在“正在运行”状态,而不能反映任务已被取消。

我想监视MongoDB记录的上次修改日期,及其status,并更新 status字段自该修改日期以来经过 cancelled。很明显,只考虑status尚未successcancelled的记录。

是否可以在MongoDB实例上进行此服务器端?它与 TTL索引功能类似,不同之处在于我不想删除记录,而需要有条件地考虑其中一个字段的值。

我不知道它是否相关,但是此实例是在docker中运行的单节点副本集。

另一种选择是对“陈旧的”文档进行周期性的任务检查,并在API端对其进行更新,但是如果mongod可以处理此问题,那就太好了。

谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)