简介:
抽奖项目,是营销活动平台中的一个重要的微服务项目。该项目采用DDD四层架构模式,将项目划分为应
用层,领域层,基础层,接口层,采用Doubbo实现模块间的通信。作为营销活动平台中的一个环节,承接着
活动玩法、积分消耗、奖品发放等系统的纽带,帮助整个业务完成用户的活跃。
内容:
使用 DDD 分层架构,围绕领域层构建抽奖相关的核心业务,规则引擎以及业务的增删改查;
实现了总体概率抽奖算法,并通过斐波拉契散列实现单项概率抽奖算法,将时间复杂度缩短为O(1);
使用模板模式,简单工厂,状态模式,策略模式,组合模式,等设计模式,优化代码,减少代码之间的
耦合度;
开发一个基于 HashMap 核心设计原理,使用哈希散列+扰动函数的分库分表模块,用来处理高访问量。
在应用层编排抽奖过程,使用MQ解耦抽奖发货流程
搭建规则引擎,用来过滤用户可以参加的活动。通过这样的方式控制运营成本和精细化运营
引入xxl-job分布式任务调度系统,定时执行任务,开启活动。
通过redis实现分布式锁,解决高并发场景下的超卖问题;
点击空白处退出提示












评论