![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
红包雨架构设计
文章平均质量分 63
斑马工
别在最好的年纪,选择安逸。
展开
-
红包雨架构设计---3、核心编码
核心编码 核心编码分为两个部分:活动信息预热和抽奖 活动信息预热 取出活动种子 定时器从数据库取出活动种子,判断时间 @Scheduled(cron = "0 * * * * ?") public void execute() { // 当前时间 Date now = new Date(); // 查询将来1分钟内要开始的活动 CardGameExample example = new CardGameExample();原创 2022-03-24 19:00:13 · 12889 阅读 · 0 评论 -
红包雨架构设计---2、流程设计
业务流程 管理后台创建红包活动,绑定奖品; 会员登录APP或者小程序; 调度器查询要进行的活动种子; 数据反馈活动种子信息; 活动预热,根据奖品数据,生成奖品池令牌桶; 活动时间到,前台弹出红包雨,会员参与抽奖; 前端获取活动信息; 缓存返回活动信息给前端; 进行用户登录、资格等基础校验; 基础校验通过则获取令牌; 缓存返回获取到的令牌; 校验令牌有效性,是否在活动时间; 令牌检验失败则令牌放回队列; 令牌有效则说明中奖,组装中奖信息; 提示用户中奖; 异步通知消息服务中奖信息; 执行持久化操作,入库中原创 2022-03-24 18:59:01 · 10075 阅读 · 0 评论 -
红包雨架构设计---1、技术架构
概述 京东、淘宝的红包雨相信大家都参与过,其实业务并不复杂,在某段时间内随机发放不同的红包,用于进行抢单抽奖,直到奖品抽完。 应用场景 时间随机 在一段时间内,设置一批礼品,这些礼品不定时的出现,尽量在这段时间内均匀抛出,一旦出现,就可以被抓走。类似抓红包。 瞬间秒杀 用于抢单或者秒杀场景,到点后,用户一起抽奖,机会均等,谁抢的快算谁的。这个并发比较高。但是活动时间相对较短。 机会随机 常见于转盘类活动。不同等级的用户,设定不同的中奖概率,一般配合设置用户最大可抽奖次数,比如5次机会, 能不能中奖,根据概原创 2022-03-24 18:58:05 · 16714 阅读 · 1 评论