logo

订单“延时取消”你会怎么实现?请至少给出 2 种实现方案。

How would you implement delayed order cancellation? Provide at least two designs.

题目类型: 技术面试题

这是一道技术面试题,常见于澳洲IT公司面试中。

难度: hard

分类: IBM Interview, Technical

标签: Delayed Job, Order System

目标公司: IBM

参考答案摘要

答案 方案 1:消息队列延时消息/死信队列(RabbitMQ DLX、RocketMQ 延时等):下单后投递延时消息,到期触发取消。优点解耦、可扩展;缺点依赖 MQ 能力与幂等处理。 方案 2:定时任务扫描(DB 状态 + 到期时间):周期性查找超时订单并取消。优点简单;缺点对 DB 压力大、延迟粒度受限。 方案 3:时间轮/延时队列(如 Redis ZSET + 消费者轮询):控制精度与吞吐。 ...

本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。

← 返回面试题库

订单“延时取消”你会怎么实现?请至少给出 2 种实现方案。

Hardsystem-designmessagingredisdatabase

想查看完整答案?

登录匠人学院学习中心,获取 STAR 格式回答和详细技术解析

前往学习中心查看答案