如何排查内存飙升的情况
文章目录
- 一、接收告警
- 二、查看监控·定位进程
- 三、查看线程占用资源情况
- 3.1、查看线程占用堆栈信息
- 四、查看堆内存对象分布
- 五、MAT分析内存情况
一、接收告警
根据内存使用率监控,我们如果超过85(经验值)是需要报警的。
那么日常异常情况如何报警呢?比如环比一周内存使用率上涨量监控。
所以监控往往是我们排查问题的提高效率的非常有效手段。
二、查看监控·定位进程
公司往往都有监控平台,可以直接查看监控内存上涨趋势?那么如果你的公司比较小是初创公司,基础建设不是非常完备的情况,我们可以通过top命令来查看。
三、查看线程占用资源情况
我们知道内存使用主要分为的线程共享、线程私有、类、系统占用空间。那么大部分是由于线程出了问题导致内存使用率偏高,或者就是内存泄露。top -H PID 查看线程占用情况。
3.1、查看线程占用堆栈信息
jstack pid 查看具体线程的堆栈信息,排查是否有死锁或者线程阻塞问题或者是因为线程数超过了系统负载导致无法回收垃圾对象从而使内存使用率逐步增加。
四、查看堆内存对象分布
- jstat查看内存活跃对象情况
- jmap -heap PID
导出dump文件以后,进行分析
五、MAT分析内存情况
如何排查内存飙升的情况相关推荐
- system guard运行时监视器,导致内存飙升!如何关闭服务?
运行:regedit 进注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SgrmBroker路径把delayedAutoStart参数改 ...
- 线上服务器内存飙升怎么排查?
一.线上服务器内存飙升怎么排查? 1.通过top命令查看cpu.内存占用情况 2.通过shift+m命令按内存占用排序查看哪个java进程占用内存高,获取pid 3.通过jmap -histo pid ...
- 【Android 内存优化】内存抖动 ( 垃圾回收算法总结 | 分代收集算法补充 | 内存抖动排查 | 内存抖动操作 | 集合选择 )
文章目录 一. 垃圾回收算法总结 二. 分代收集算法补充 三. 查看 Java 虚拟机 四. 获取 Android 应用可使用最大内存 五. 内存抖动标志 六. 排查内存抖动 七. 常见的造成内存抖动 ...
- jvm监控工具(排查内存溢出和内存泄漏)
Visual VM可以实时监控jvm的运行情况 按Perform GC会立即进行一次GC 按Heap Dump会生成内存信息报告 还可以监控SQL 使用visualVM排查内存泄漏 模拟内存溢出: i ...
- 一文带你了解如何排查内存泄漏导致的页面卡顿现象
作者 | 零一0101 责编 | 欧阳姝黎 不知道在座的各位有没有被问到过这样一个问题:如果页面卡顿,你觉得可能是什么原因造成的?有什么办法锁定原因并解决吗? 这是一个非常宽泛而又有深度的 ...
- 这些排查内存问题的命令,你用过多少?
我相信大家都遇到过内存占用率过高的情况,在排查过程中,我们会用到一些命令或工具,下面来看下这些你都用过吗? top 命令 首先比较常用的就是 top 命令,是性能监控的常用命令,该命令可以实时显示系统 ...
- Docker环境下Spring Boot应用内存飙升分析与解决
目录 Spring Boot应用内存飙升 服务现状 JVM默认内存设置 优化 限制JVM内存 参数解释 JVM常见参数 java.security.egd 作用 优化后的Dockerfile文件 优化 ...
- 在线排查内存泄漏的步骤
一.在线排查内存泄漏的步骤 想到内存泄漏问题的排查,很多开发会想到使用 Valgrind.使用 Valgrind 有几个局限: 需要安装 Valgrind 需要启停服务进程 影响服务进程性能 依赖于测 ...
- redis php数据插入失败,redis插入数据,恢复数据测试(禁止淘汰策略下恢复大于redis内存限制数据情况)...
环境准备: redis php的redis扩展 redis version=4.0.8 php version: php version.png php redis extension: php re ...
- Android 中查看内存的使用情况集经常使用adb命令
1. 在IDE中查看Log信息 当程序执行垃圾回收的时候,会打印一条Log信息.其格式例如以下: D/dalvikvm: <GC_Reason> <Amount_freed>, ...
最新文章
- 不想被问年终奖?2018年春节自救攻略来了!
- 图文剖析:单点登录常见解决方案实现原理
- python多元回归预测例子_Python机器学习,多元线性回归分析问题
- C#实现字符串按多个字符采用Split方法分割得到数组
- oracle11g基目录和主目录,Red Hat Enterprise Linux4.0 安装oracle11g
- 我用大屏模板做年中可视化报告,惊艳了在场的同事和领导
- [BZOJ3696][FJSC2014]化合物(异或规则下的母函数)
- 第三次握手为什么没有序列号_TCP三次握手机制-深入浅出(实例演示)
- 什么是OpenStack
- 宏正ATEN发行最新款双滑轨PS/2-USB双界面LCD控制端
- ASPXGridView生成Excel
- 基于Android的城市环境监测系统
- OpenFileDialog/SaveFileDialog 中 Filter用法?
- vue element-ui el-form表单验证表单验证,数值输入验证踩坑
- unity3d/用户自由改变背景色
- 类加载——类加载时机、类加载过程、类加载器
- Android -- 在线播放歌曲 1 -- 搜索歌曲
- 福利贴:最全实时音视频开发要用到的开源工程汇总
- 赵长鹏回复协助洗钱质疑; 欧洲通过区块链监管
- 【论文速递】ISPRS2018 :基于增强极线几何约束以及自适应窗最小二乘匹配方法的立体SAR山区DSM
热门文章
- 定义数字品牌资产,苏泽兰特CEO胡烜峰讲透元宇宙的价值与未来
- 浏览器清理缓存的几种方法
- ubuntu14.04彻底卸载ibus安装fcitx拼音输入法
- uniapp web设置ios safri浏览器 添加到屏幕 像是应用 但是不用证书
- 【ROS】中级操作学习整理-TF坐标变换
- Python新书上市,强烈推荐!《Python网络数据爬取及分析从入门到精通(爬取篇)》导读
- python画e指数函数_python绘制指数函数
- vbox安装深度linux,win10系统上用VirtualBox虚拟机安装国产深度deepin系统教程
- Pandas query 的用法, df.query
- Kinect for Windows SDK开发入门(五):景深数据处理 下