今天就简单的从大的思路上来说说高并发设计手段,后续再完善详细内容。
系统性能衡量指标
衡量一个系统的性能怎么样,主要从以下两个方面:
1.吞吐量,粗略的可以使用QPS。
2.响应延迟,也可以说是RT(Response Time)。
一般而言,上述两点在配置不变时,是成反比的。同样的环境配置,若需要提升吞吐量则响应延迟就会增加,反之亦然。
性能优化目标
基于上述衡量指标,我们就可以初步确定性能优化的目标:
1.缩短响应时间
2.提高并发数
3.同时让系统处于合理状态
系统优化手段
据我理解,所有的优化手段都可以归类为以下两种:
1.空间换时间:使用更多更高效的存储,最常见的就是使用缓存。
2.时间换空间:使用更多的计算(CPU)来减少对存储的使用,比如数据压缩。
3.为了确定使用上述哪种手段,我们需要找到系统的性能瓶颈,找到系统的关键路径。
优化层次
我系统整体来看从以下三层逐步或者并行优化:
1.架构层次:架构上的优化那基本上是就是一个拆字了,这个在我架构专题里面有很多的介绍。
2.算法逻辑层次:方法方面的话需要对存储的数据结构以及存取的算法来优化了。
3.代码层次:经常代码层次的优化见效是最快的,前提是需要我们能定位代码的性能问题。
最后总结下个人了解的空间换时间的优化手段:缓存、MQ、索引、异步、预热、冷热分离等。
至于时间换空间的至少在大部分的业务系统都不会涉及到。
网友评论