现状
服务A的核心业务,要频繁调用服务B提供接口,如用户的某个业务属性
实际上相当于A,业务上强耦合B
如果服务B网络抖动,发版,对服务A都会有大的影响
优化
- 服务A从redis中查找,有则直接返回,同时异步去调用服务B接口,返回后更新redis;
- 如果redis没有,同步调用服务B接口,返回给服务A,并更新redis
好处
- 减轻了对服务B的业务强依赖,转向依赖了redis;redis作为基础组件,肯定是更稳定;
- 调用了redis,响应更快
缺点
变动就不会那么实时了;有修改的时候下一次才能生效;
适合变动不频繁的场景;
本质上还是A和C的取舍。
