程序员需要思考的Java生产环境下性能监控与调优的几个小问题
程序员需要思考的Java生产环境下性能监控与调优的几个小问题
**1、**开发阶段基本不用,生产环境适用
**2、**生产环境比较复杂,如硬盘坏了、网络坏了,CPU利用率高
**3、**生产环境出现问题不好进行定位
**4、**解决问题
(1)生产环境发生了内存溢出该如何处理
(2)生产环境应该给服务器分配多少内存合适
(3)如何对垃圾收集器的性能进行调优
(4)生产环境CPU负载飙高该如何处理
(5)生产环境应该给应用分配多少线程合适
(6)不加log如何确定请求是否执行了某一行代码
(7)不加log如何实时查看某个方法的入参与返回值
(8)JVM的字节码是什么
(9)循环体中做字符串+拼接为什么效率低
(10)字符串+拼接一定是StringBuilder.append吗
(11)String常量池是咋回事
(12)I++与++I到底哪种写法效率更高
5、
(1)基于JDK命令行工具的监控
(2)基于JVisualIVM的可视化监控
(3)基于Btrace的监控调试
(4)Tomcat性能监控与调优
(5)Nginx性能监控与调优
(6)JVM层GC调优
(7)Java代码层调优