帮助某公司开发一个抢单发单的电商系统,确保能应对用户并发性极高的抢单行为,和每个商户批量发布订单的处理行为,以及实现各种繁琐复杂的购买下单流程。
基于java的springboot+dubbo框架作微服务开发,基于需求划分好不同微服务模块,对于用户身份等基础信息以及敏感信息使用mysql进行持久存储,而对于订单本身各种数据则使用mongodb进行存储;在性能方面使用redis优化mysql的查询速度以及用户登录认证等cookie信息的存储;在抢单方面则使用rabbitmq来实现削峰异步的操作,也作出对应一些消息补偿保证数据的原子性和事务性。