关于微服务,龙军在之前已经做过分享,在开发口袋提供给 dr 后台的服务时,已经引入了 Spring boot 等技术栈,但总觉得自己理解的很肤浅,没有形成一个体系化的认知,更多时候像是在乱挥宝剑。
借着为 Q4 定 OKR 的机会,开始阅读《微服务设计》一书。书中的一些观点给了我很多启发,也对口袋服务端接下来的优化有了一定的方向和目标,近期最重要的一点是:solr 拆分微服务。
原因:
- doctor-pocket 比较重
- solr 跟 doctor-pocket 的其它功能关联度很小
- 搜索本身就是比较大的一个业务点
- 现在的 solr 代码比较乱,正好借机重构
- 经常遇到搜索需要优化,但是由于 doctor-pocket 主服务的顾及,无法及时更新上线
优化点:
- solr 拆分独立微服务
- 引入 Spring boot
- 引人 Docker
- 为了保证松耦合,用MQ进行非阻塞式通信
- 为 solr 服务添加健康检查
- 优化 solr 缓存