项目加班加点的写完,就该进入测试阶段。
下面分享一些JAVA项目性能调优的几个方面,性能可提升50%左右!
1、性能调优的必备工具
1.1 Apache Jmeter 压力测试工具
制作Jmter脚本,把项目主要的接口制作成一个脚本,执行,观察jvm回收状态。
参数设置:线程数为500
目标:(Throughput)TPS,每秒完成的事务数在500以上的接口为合格!
一般是5万实例(Samples)的时候就TPS基本是稳定状态
1.2 利用VisualVM 进行性能分析
需要安装Visual GC插件,监控Old Gen和Eden
2、优化的几个方向
2.1 尽量使用JDK8新特性 Steam的方式遍历数据
java各种List循环:for、forEach、lambda forEach、stream forEach、iterator性能效率对比blog.csdn.net2.2 SQL(面试也经常会被问到)
2.2.1 使用Mysql 或者Mongodb数据库对于使用查询,都必须加上索引。
2.2.2 SQL语句的优化,子查询是最耗时的,可以打开慢查询日志进行进行监听。
真·mysql中的SQL优化_Wildpen的成长之路-CSDN博客_mysql优化blog.csdn.net2.3 优化代码的逻辑结构
首先,代码一定要简洁简洁简洁!!!
算法复杂度在一定程度上很影响性能,用最简洁的算法得到正确的结果。
一文带你了解算法复杂度O(1),O(n),O(logn),O(nlogn)的含义_东哥_Jeffery的博客-CSDN博客_o(n)blog.csdn.net3、小总结
所有的方式都只能引领入门,修行还是得看个人,程序员的日子也许枯燥,但是解决完一个又一个的难题会很大的成就感。能为这个行业,这个社会做出一些有价值的事,就很骄傲啊!