码农知识堂 - 1000bd
Python
PHP
JS/TS
JAVA
C/C++
C#
GO
Kotlin
Swift
第一章:概述
一、背景说明
1、生产环境中的问题?
生产环境发生了内存溢出该如何处理?
生产环境应该给服务器分配多少内存合适?
如何对垃圾回收器的性能进行调优?
生产环境CPU负载飙高该如何处理?
生产环境应该给应用分配多少线程合适?
不加log,如何确定请求是否执行了某一行代码?
不加log,如何实时查看某个方法的入参与返回值?
2、为什么要调优?
防止出现 OOM
解决 OOM
减少 Full GC 出现
3、不同阶段的考虑
上线前
项目运行阶段
线程出现 OOM
二、调优概述
1、监控的依据
运行日志
异常堆栈
GC日志
线程快照
堆转储快照
2、调优的大方向
合理的编写代码
充分并合理的使用硬件资源
合理地进行 JVM 调优
三、性能优化的步骤
1、性能监控
GC频繁
cpu load 过高
OOM
死锁
程序响应时间较长
2、性能分析
打印 GC 日志
通过 GC Viewer 或者 http://gceast.io 来分析日志信息
灵活运用命令行工具、jstack、jmap、jinfo
dump出堆文件,使用内存分析工具分析文件
使用 Arthas、jconsole、JVisualVm 来实时查看 JVM状态
jstack 查看堆栈信息
3、性能调优
适当增加内存,根据业务背景选择垃圾回收器
优化代码,控制内存使用
增加机器,分散节点压力
合理设置线程池线程数量
使用中间件提高程序效率、比如:缓存、消息队列
其他…
四、性能评价/测试指标
停顿时间(响应时间)
提交请求和返回该请求的响应之间使用的时间,-.般比较关注平均响应时间常用操作的响应时间列表:
吞吐量
对单位时间内完成的工作量(请求) 的量度
并发数
内存占用
相互间的关系
各位
彭于晏
,如有收获点个赞不过分吧…✌✌✌
相关阅读:
磁盘误删除怎么恢复呢?教你恢复它
派尔特医疗在港交所招股书二次“失效”,上市计划实质性延迟
DN-DETR(CVPR 2022)
你还不知道责任链模式的使用场景吗?
C#的架构、框架、设计模式
感染了后缀为.360勒索病毒如何应对?数据能够恢复吗?
Vite项目配置resolve.alias后提示『找不到模块』的解决办法
npm命令大全
IDEA 不推荐使用 @Autowired 注解的原因
完整boot引导代码详解(完整无注释代码boot.asm+简单loader.asm)
原文地址:https://blog.csdn.net/aetawt/article/details/128008902
最新文章
攻防演习之三天拿下官网站群
数据安全治理学习——前期安全规划和安全管理体系建设
企业安全 | 企业内一次钓鱼演练准备过程
内网渗透测试 | Kerberos协议及其部分攻击手法
0day的产生 | 不懂代码的"代码审计"
安装scrcpy-client模块av模块异常,环境问题解决方案
leetcode hot100【LeetCode 279. 完全平方数】java实现
OpenWrt下安装Mosquitto
AnatoMask论文汇总
【AI日记】24.11.01 LangChain、openai api和github copilot
热门文章
十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
奉劝各位学弟学妹们,该打造你的技术影响力了!
五年了,我在 CSDN 的两个一百万。
Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
面试官都震惊,你这网络基础可以啊!
你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
心情不好的时候,用 Python 画棵樱花树送给自己吧
通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
13 万字 C 语言从入门到精通保姆级教程2021 年版
10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系
2656653265@qq.com
京ICP备2022015340号-1
正则表达式工具
cron表达式工具
密码生成工具
京公网安备 11010502049817号