新妙佳营销平台

我要开发同款
Java程序员13142022年05月31日
558阅读

作品详情

项⽬描述:
新妙佳营销平台是依靠新妙佳电商系统、会员系统、大数据分析系统为个人用户发放优惠卷、推送商品活动、激活不活 跃用户、智能推荐爆款商品信息的一个平台。助力公司提升活跃用户量,增加用户与系统的黏性,提高订单量。
项⽬职责:
全量用户推送营销活动的高可用架构设计、开发。
全量用户发放优惠卷的高可用架构设计、开发。
特定用户定时推送热门商品信息的高可用架构设计、开发。
特定用户发放优惠卷的高可用架构设计、开发。
负载情况:
总⽤户量1.2亿。
技术挑战、解决⽅案:
全量用户营销活动推送的高可用架构设计
业务场景:
运营开启优惠活动推送,会针对全量⽤户发送通知消息。需要⽤户数据全量查询,数据量达上亿条,给数据库造 成很大的压力,并且系统加载大量的数据会造成频繁的Full GC,甚至内存溢出,造成机器宕机。就算是向MQ发 送消息,发送消息数量也是亿级别,非常耗时。
解决方案:
获取用户maxAccountId,按照4000步⻓拆分成n个⼦任务,再将所有子任务进行Rocketmq消息的batch合 并,以batch模式一批一批的发送任务到mq里去,推送系统消费消息,按照4000的步⻓从数据库中查询出⽤户 数据,在每次提取4000个⽤户数据后,自定义200个线程的线程池并发的调用三方推送消息接口,为了保证数据 库的压⼒不⾄于太⼤,利用Semaphore进行限流。
全量用户发放优惠卷的高可用架构设计
业务场景:
运营开启向全量⽤户发放优惠券,除了全量查询上亿条数据用户数据,还需要向数据库插入上亿条优惠卷与用户 关联数据。不仅耗时,而且会造成数据库、系统压力特别大。
解决方案:
采用惰性发放优惠卷的方案。运营人员创建发放优惠卷后,数据库、redsi中各存一份,每当用户登录电商平台 后,以弹框的形式展示redis中有效的优惠卷信息,点击领取后,创建一个优惠卷领取消息到RocketMQ,营销平 台监听到该消息后,消费插入优惠卷与用户关联数据。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论