1.项目概述:该项目主要是一个常规的购物平台,有推荐人,分佣,支付等常规电商项目
2. 框架选型:spring boot + mybatisPlus + redis + elasticSearch + rabbitmq
3. 该项目一期需求逻辑较为简单,所以采用springboot单体架构。该项目主要分为商品模块,支付模块,会员模块,秒杀模块,订单模块。商品模块采用es进行存储来达到实时搜索的目前同时较少数据库的压力。订单模块采用rabbit来实现异步解耦,消峰解谷的目的。例如自动取消订单采用rabbit TTL延时队列来实现60分钟后自动取消订单等。秒杀模块使用了线程池来实现高并发的效果。使用redis存储订单id来实现将流量上游从而较少数据库的承载能力。使用redis锁来实现同步实现同一时刻只有一个用户下订单。二级分销模块,因为分销模块逻辑较多为了实现更改更好的性能,来较少不必要的数据库事务所以采用存储过程来实现分销模块的业务逻辑。