饿了么-店铺装修-套餐(一人食&多人食)

我要开发同款
小槟榔2022年12月21日
761阅读
所属分类APP

作品详情

1. 功能模块
1.1 装修前端-商家操作的入口,用于触发套餐配置的增删改查操作
1.2 装修后端-选菜组件&配置存储&下发
1.3 店铺C端后端-配置接收
1.4 店铺C端前端-app页面效果渲染

2. 我负责的部分:装修后端。技术栈:java、hsf、rocketmq、redis、mysql、布隆过滤器

3. 难点
3.1 商家增删改配置:商家可以以连锁店维护对其管理的店铺进行批量操作,1次会为1万个店铺与配置绑定/结绑,同时系统需要在1秒(比上一个顶部招牌的项目要求更高)返回操作结果
3.2 商家查询配置列表:有非常多的过滤条件,比如配置投放日期、投放时间段、投放渠道、投放人群....
3.3 配置下发接口,并发量非常高,且接口响应时间要求也很高,需要在50ms内返回
3.4 只能增加少量服务器资源

4. 难点解决
3.1 商家增删改性能提升:使用新工程框架来做,对于db操作基于mybatis,只需要几条sql即可完成db操作;对配置关联表进行分表,降低单表数据量。
3.2 商家查询配置列表:在配置变更时,通过rocketmq的事务消息将配置数据同步到es中,通过es来做各种条件过滤查询
3.3 配置下发接口:通过rocketmq的延迟消息,以店铺维度将店铺关联的配置缓存到redis中,请求基本命中redis
3.4 只能增加少量服务器资源:通过业务特点发现有90%以上请求的店铺都是未配置过套餐组件的,所以在本地维护1个有配置记录的店铺id的布隆过滤器,通过redis延迟消息进行维护。最终在大幅度降低配置下发接口耗时的同时,大幅度降低了服务器资源消耗。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论