开发前的准备
需要现根据项目实际需求思考好业务流程,我们是用脑图制作了下业务流程的梳理。然后再根据所要做的需求确定好一些需要用到的技术与工具。确定完业务流程后,再根据流程分工,一些人做架构,架构分为auth,common,config,gateway,job,monitor,search。一些人做业务,功能的接口我们选择了Apifox来测试需要的接口,使用gitee协同开发。一些人做检查代码与文档等规范,我们规范选用了阿里巴巴java开发手册(嵩山版)。
项目进行中
我们采用MybatisPlus来进行crud,注解采用swagger。涉及校验方面的,我们再实体层使用了注解校验,使用时还要在controller层的需校验字段前写 @Validated。数据层的创建时间与修改时间的更新: 在创建时间字段的时候:
① DEFAULT CURRENT_TIMESTAMP
表示当插入数据的时候,该字段默认值为当前时间
② ON UPDATE CURRENT_TIMESTAMP
表示每次更新这条数据的时候,该字段都会更新成当前时间
这是遵循阿里规范:
优化与最后总结
主从复制+多数据源+redis缓存。主从复制:提高性能,防止主数据库服务器故障后,数据丢失,可在故障后切换到从数据库。多数据源:以防数据过多,一个服务器承载不住,需要将一部分数据存储在另一个服务器里。还有在项目与其他项目对接时,需要连接另外一个项目数据库时可以用到。redis缓存:redis主要是用于内容缓存,可以处理大量数据高访问负载。
还有许多技术,就不一一讲述了,做完这次项目最大的体会就是不学永远不会,学了还有机会,不做做永远不知道自己能做到什么样子,做了才知道自己还有哪些做不到,需要去学。
最后送自己一句话:不要做思想上的巨人,行动上的矮子,要知行合一。