Now Working候选人确认题目与策略边界工作区已就绪,候选人先读题、看文件结构和提交要求。
workspace/order-servicemain
clean checkoutworking copy
order_service.pytest_order_service.py
313233343536373839404142
def reserve_inventory(order_id, sku, qty):existing = repo.find_by_order(order_id)if existing:return existingwith redis.lock(f"inventory:{sku}"):stock = repo.get_stock(sku)if stock < qty:raise OutOfStock()repo.decrease_stock(sku, qty)return repo.save(order_id, sku, qty)
竞态窗口幂等检查在锁外,重复请求可能同时通过检查。
Terminalidle
$ pytest tests/test_order_service.py::test_duplicate_submit -qready: click Run concurrency test
$pytest tests/test_order_service.py::test_duplicate_submit -q
先复现库存重复扣减