You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
3.1 KiB
Markdown
70 lines
3.1 KiB
Markdown
# 最佳实践
|
|
|
|
## 目录介绍
|
|
|
|
- sde(Scaffold Development Evironment) 脚手架整合
|
|
- eladmin
|
|
- SpringBoot, SpringData Jpa、 JWT、Spring Security、Redis、Vue的前后端分离框架
|
|
- fast-boot
|
|
- SpringBoot、SpringSecurity、Mybatis-Plus
|
|
- guns
|
|
- SpringBoot、BootStrap
|
|
- renren-security
|
|
- SpringBoot、Shiro、MyBatis-Plus
|
|
|
|
|
|
|
|
- TODO 未来把 支付模块 广告模块 电商模块
|
|
- SCRM CRM CDP 等系统集成进来作为一个Demo级别的项目进行存在
|
|
|
|
|
|
|
|
## 解决方案研究1 - 核心业务的增长及治理
|
|
|
|
### 0. 会产生的问题
|
|
- 代码
|
|
- 原始的代码设计可能存在缺陷, 缺乏设计模式的应用, 或者需求的增加让代码的耦合性增加,可读性降低,可维护性降低
|
|
- 数据
|
|
- 在存储容量不足,查询方面可能存在瓶颈, 以及数据的增加带来的表结构的改变灾难,要清楚怎么变,怎么设计变,怎么设计不变
|
|
- 服务
|
|
- 原始服务的拆分可能存在不合理性,对于公用服务的封装可能也存在一定的缺陷,以及对服务的监控啥的,可能都需要重新去建设体系化
|
|
- 扩展
|
|
- 抓住不变和可变,去预测和治理一些新增的需求和适应一些改变
|
|
- 支撑
|
|
- 合理的应用和使用任何可靠手段来支撑业务,赋予业务更多的可能和支撑业务的大幅度增长和可用性
|
|
- 安全
|
|
- 设计合理的安全架构,制定自己系统的安全测试线,去收集问题,发现问题,解决问题
|
|
|
|
### 1. 解决问题方案
|
|
- 代码
|
|
- 使用设计模式
|
|
- 1- 先确认要修改的代码范围,或者要重新设计的业务范围
|
|
- 2- 规划要变化的代码范围,做一些改变的界限,评估界限边缘的代码会带来的一些风险,检查边缘代码
|
|
- 3- 分解代码的功能,按设计模式的: 创建型,结构型,行为型 进行分类
|
|
- 4- 对不同模式的设计模式进行评估使用,注意还是不要创新,要有一些历史的借鉴经验在这里
|
|
- 5- 在使用设计模式的时候要想想后续改变大不大,以及有一些心里的标准,防止使用设计模式爆炸
|
|
- 封装通用
|
|
- 1- 对同一类的方法进行封装
|
|
- 2- 按照业务的对接和操作方式进行封装
|
|
- 数据
|
|
- 数据结构
|
|
- 1- 对实体,实体之间的关系进行梳理-ER图
|
|
- 2- 存储的合理性进行分析,让表的结构和存储合理
|
|
- 3- 借助其他的存储载体的特有数据结构进行优化设计
|
|
- 表的优化
|
|
- 1- 对单业务模型进行大数据治理,比如分表分库
|
|
- 2- 对表的设计扩展进行预留,对单表的大小进行合理化检查,避免没必要的冗余过多,或联合查询过多
|
|
- 3- 盘点查询,对索引进行进一步的设计及规划,对一些文本处理的情形,
|
|
- 缓存
|
|
- 1- 添加数据层的缓存组件,对热数据进行缓存
|
|
- 服务
|
|
- 服务拆组
|
|
- 1- 根据业务需求检查服务的设计合理性,对服务进行有必要地拆组
|
|
- 服务监控
|
|
- 1- 使用SpringCloud 及 SpringCloudAlibaba 对服务的调用和状态进行详尽的检测
|
|
- 扩展
|
|
- 功能扩展
|
|
- 1- 对
|
|
|
|
|