项目优化毫无止境,但是常用的一些,可以有很多出众的效果。
首先是功能服务模块化,独立部署。微服务带来的便利很多很多。具体的优化可以分块说明。借助网上的一些优秀文章,以及项目经历过的坑,简单总结下。
分离技术
1. 模块分离
监控服务,日志服务,消息服务等。业务分开开发和部署。
2. 数据库读写分离
对于大部分业务,都是读多写少,可以充分利用分库的资源。
3. 数据库按照业务细分
按照主要业务拆分不同的数据库,结合 RPC 使用,更大降低数据库层面的耦合程度。
缓存技术
1. 对外暴露的接口一定不能直达数据库
2. 数据“尺寸较小”、“高频的读取操作”、“变更操作较少”使用这种嵌入式缓存将非常合适。
Sql优化
1. 索引使用错误
2. 过多的join操作