在使用 kafka 的基于事件的电子商务系统中,您如何处理处于 pending_payment 状态的订单自动过期?
通常,每当客户请求创建新订单时,都会向主题发送一条消息,以便库存服务可以消耗和保留客户订单的物品。订单的状态将转换为pending_payment
。对于pending_payment
状态中的每个订单,订单中的项目将保留 30 分钟。我想自动使订单过期并以可扩展的方式回滚商品的数量。
我能想到的一种方法是在 30 分钟内安排一个 cron 作业,该作业将使特定订单过期并放回物品的数量,但有没有更有效的方法来做到这一点?为每个订单创建一个 cron 作业是否可行?