性能优化的七个点
性能优化分为,业务优化和技术优化。业务优化一般属于产品和管理的范畴,作为后端开发,一般应有技术优化。 技术优化一般有七类技术手段。
性能优化的重点是在照顾性能的前提下,达到资源利用的最优状态。
4、资源冲突优化
在操作系统中就有提到过共享资源会带来资源冲突。现实开发中的性能问题,和锁有关的是非常多的,比如说数据库的行级锁,表锁,java中的各种锁等等,在底层操作系统中,还有 CPU、操作系统的锁等等。
对资源的竞争,会造成很严重的性能问题,所以在开发的时候,需要注意并发的问题,并发很有可能会引起资源冲突。
5、算法优化
算法优化无外乎 八大排序的选择,进行代码调优。根据特殊的业务场景进行规划,选择需要的数据结构、算法等等能够在大数据场景时减少很多的时间复杂度。
6、高效实现业务需求
在开发中,有很多轮子比较好,所以在开发的时候可以进行选择良好、适合当前业务场景的一些组件、轮子、框架等等进行开发。例如java可以使用netty进行开发等等,还可以选择一些好的语法分析器如JavaCC,效率就会比正则表达式高一些。
7、JVM优化
JVM优化需要注意的点特别多,因为JAVA会很大程度上受到JAVA的制约,对JVM虚拟机进行优化,如果参数优化不当,会造成OOM等比较严重的后果。
目前JVM中使用很广泛的垃圾回收器是G1,通过很少的参数配置,就可以高效回收。CMS已经在JAVA14中移除,因为GC时间不可控制。