奶茶店项目总结

发布时间 2023-03-30 21:23:08作者: 枫叶像思念

1.介绍一下项目:

业务方面:分别支持商家端和顾客端。支持商家端进行奶茶新品上传,可以定义上传奶茶产品小料及冷热,支持定制情侣或多人套餐售卖。

用户端,支持用户设置默认地址,自定义奶茶口味,加入购物车后下单功能,也支持多人点单模式。

技术栈方面:项目使用Springboot作为web框架,使用mybatis-plus链接数据库, 数据库方面使用mysql及非关系型数据库redis部署在云服务器的docker虚拟化容器上,同时使用git作为版本控制,maven进行依赖管理。

项目难点:自定义了copyonwrite容器,来过滤敏感词。

提升数据库的访问瓶颈,在docker中部署多个mysql数据库容器,使用sharding-jdbc根据不同端口号来做到主从分离、读写分离,采用轮询的方式在多个从库中读数据。使用spring cache功能以及fastjson使用cacheable自动缓存数据到redis。

数据备份,主从分离以及docker挂载数据文件来备份mysql。开启aof及rdb混合备份redis。

项目最困难的地方:

 

2.项目数据分页:

开始使用sql语句limit进行分页(由于是全表查询,后进行过滤,速度慢),后期优化为使用Mybatis-plus内置的分页插件,page、pagesize组合成Page对象,结合lambdaQueryWrapper使用service的page方法进行分页查询。

 

3.