1.优惠券系统的核心思想
默认的优惠券系统:根据运营人员设定的条件生成对应的优惠券模板、
- 优惠券码的要求:唯一性和有一定的识别性
优惠券码的格式(一共18位):产品线+类型(前四位)+日期随机码(中间六位)+0到9的随机数(后八位) - 优惠券异步生成:因为我们一次性可能会生成几万个优惠券,所以我们在后台创建的时候,进行异步处理(可以采用消息队列来实现)
2.技术方案
- 通过优惠券模板生成优惠券码保存到redis,方便我们进行查询和处理数据
- 优惠券在一个实例服务生成:这样做的目的是解决优惠券码一致性的问题(我们在代码中使用Set数据结构生成),这样的做的好处是不会造成优惠券码的超发和分发优惠券配额问题
3.优惠券过期问题
优惠券具有时间属性,如果优惠券过期了,则不可使用,