《3.1.1 什么是耦合以及耦合带来的问题》
- 31 46 公共库导致的耦合:
解耦方案1:公共库进行业务垂直拆分; 解耦方案2:对公共库进行服务化 - 38分 服务化不彻底导致耦合:
优化方案: 业务特性代码上浮 - 40 30 不合理同步调用导致的耦合
优化方案:通过MQ实现解耦 - 45 30 配置中的ip导致上下游耦合
优化方案:用域名代替IP(可使用nginx),或者配置/注册中心
《3.2.1 服务依赖解耦的方法》
-
19 50 使用Maven进行版本控制: 利用父pom的版本号
-
23 10 利用Springcloud gateway 进行权限解耦
-
24 45 流量解耦
-
对数据库进行拆分
-
29 55 部署解耦,灰度发布
-
用设计模式解耦:
-
- 观察者模式
-
- 命令模式:
- 命令模式:
《3.3.1 基于消息队列的解耦》
- 15 35+ MQ的典型应用场景之一:上游不关心下游的执行结果
- 32 14 案例1:用消息队列解耦下单业务:
- 45分 案例2:签到服务和送积分服务解耦
《3.4.1 服务依赖解耦实战》
- 解耦的一大好处是高可扩展性
- 27分 多产品登录filter
- 37分 用查询与命令分离(CQRS)做直播答题