问题
- 我有一家餐厅订单集合(id,createdAt,updatedAt,state)。state可以容纳[“ PENDING”,“ PROCESSING”,“ CANCELLED”]中的任何一个
- id,createdAt已编入索引
- 我想将订单状态更改为“已取消”,如果在createdAt时间5分钟后状态仍为“待处理”,则退还客户
- 我正在使用nodejs,mongodb(mongoose)
我拥有的解决方案
- 安排带有setInterval的函数以在创建订单后的5分钟内执行
- 运行cron作业并使用mongo光标并执行检查所需条件的操作
我在寻找什么
- 此问题的解决方案具有可扩展性(我可能从所有餐厅收到10000个待处理订单)
预先感谢