svchost占用内存过高_是什么导致你的Java服务器内存和CPU占用过高呢

一、内存占用过高

1、造成服务器内存占用过高只有两种情况:内存溢出或内存泄漏

(1)内存溢出:程序分配的内存超出物理内存的大小,导致无法继续分配物理内存,出现OOM报错。

76abb9f71e6780fda78fd8f37a71bb29.png

(2)内存泄漏:不再调用的对象一直占用着内存不释放,导致所占用的这块内存被浪费掉,久而久之,内存泄漏的对象堆积起来,也会导致物理机的内存被耗尽,出现OOM报错。

be5358a3845a73fe34d7f7a67373d102.png

2、内存过高的检测办法:

一般我们的Java服务器都是部署在Linux机器上面,可以通过jvm自带的命令进行一些检测:

(1)查看对象的数目和占用内存大小;

(2)如果需要进一步定位问题代码,那么就需要把Java程序的内存镜像导出,再具体分析了,通过如下命令导出程序的内存镜像。

1a9e40af5b27c4b21bbbbb8796c1a1cf.png

二、CPU使用过高

1、当程序发现CPU使用过高的情况时,可以使用Windows系统的Process Explorer工具来找到CPU高消耗的线程,所以需要在Windows机器上面搭建好服务器的测试环境,尽量模拟出线上CPU飙升的情况;

2、模拟好环境后,通过任务管理器,在进程一栏中找到Java程序的进程号;

3、下载Process Explorer工具:

c0745760043ed89d1adc6fe3ea066bfb.png

4、打开工具后,根据刚才的进程号找到进程;

5、然后右键-->Properties,再选择Threads选项卡,点进CPU排序,可以找到消耗CPU最多的那个线程;

4925c3f1261f7a40f18aee57cc917006.png

6、使用科学计算器,将十进制的线程号转成十六进制,比如493620-->78834;

7、到此已经拿到了可能出问题的进程号和线程号,接下来使用jvm内置的命令来导出Java的堆栈信息:

jstack -l >

4b42c9a8fffcdbfde017bf6d36b9e1f5.png

8、打开导出的堆栈信息,并全文搜索刚刚拿到的十六进制的线程号,就可以找到出问题的代码具体位置了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/489018.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php取不到post数据库,安卓post 数据到php 在写入数据库老是不成功, 数据post不到php...

代码如下安卓端public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);new Thread(){Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);new Thread(){Overridepublic void run(){ArrayList para…

Even Three is Odd

题意&#xff1a; 问题是对于所有的长度为n&#xff0c;且$1<ai<n$的整数序列求 $\prod_{i1}^{n-2}{max \{w_i,w_{i1},w_{i2}}\}$ 之和。 解法&#xff1a; 首先设dp状态为 $f(i,j,k)$ &#xff0c;长度为$i3$的&#xff0c;最大值为k&#xff0c;且最大值出现的位置集合…

中国图书评论协会2019年度“中国好书”

来源&#xff1a;腾讯网2019.12.16第1127次推送为读者发现好书&#xff0c;为好书寻找读者。“中国好书”月榜由我国权威的图书评测机构中国图书评论学会发布&#xff0c;志达书店经整理编辑&#xff0c;为您呈现“中国好书”2019年度榜单&#xff08;1-10月&#xff09;。寒假…

pythonfor循环列表排序_Python使用for循环对列表内元素进行排序方法

这篇文章介绍Python使用for循环对列表内元素进行排序方法list [13, 22, 6, 99, 11]for m in range(len(list)-1):for n in range(m1, len(list)):if list[m]> list[n]:temp list[n]list[n] list[m]list[m] tempprint list结果&#xff1a;[6, 11, 13, 22, 99]分析&#…

a标签居中 img vue,让html img图片垂直居中的三种方法

三种让img元素图片在盒子内垂直居中的方式教程&#xff0c;依据代码与文章教程熟习掌握并加以应用。一、使用flex完成垂直居中操纵css flex实现垂直居中。flex或许不是完成垂直居中最好的选择&#xff0c;由于IE8,9其实不赞成它。那时&#xff0c;为了用flex实现垂直居中&#…

python——面向对象相关

其他相关 一、isinstance(obj, cls) 检查是否obj是否是类 cls 的对象 123456class Foo(object):passobj Foo()isinstance(obj, Foo)二、issubclass(sub, super) 检查sub类是否是 super 类的派生类 1234567class Foo(object):passclass Bar(Foo):passissubclass(Bar, Foo)三、异…

德国工业4.0眼里“工业互联网”与“智能制造”

来源&#xff1a;智造智库工业4.0在德国被认为是第四次工业革命&#xff0c;主要是指&#xff0c;在“智能工厂”利用“智能备”将“智能物料”生产成为“智能产品”&#xff0c;整个过程贯穿以“网络协同”&#xff0c;从而提升生产效率&#xff0c;缩短生产周期&#xff0c;降…

python常用模块教程_盘点Python常用的模块和包

模块1.定义计算机在开发过程中&#xff0c;代码越写越多&#xff0c;也就越难以维护&#xff0c;所以为了编写可维护的代码&#xff0c;我们会把函数进行分组&#xff0c;放在不同的文件里。在python里&#xff0c;一个.py文件就是一个模块。2.优点&#xff1a;提高代码的可维护…

php 正则匹配静态资源,Struts2 配置静态资源文件不经过Strut处理(正则匹配)

Struts2框架有两个核心配置文件&#xff1a;struts.xml和Struts2默认属性文件default.properties(在struts2-core-2.3.20.jar中)default.properties可以通过自己在classpath下写一个struts.properties文件进行定制改写为什么是struts.properties&#xff0c;这可以看org.apache…

全球数字孪生市场大预测:2025 年的 358 亿美元,年复合增长率(CAGR)高达 37.8%...

来源&#xff1a;云头条 数字孪生市场估计将从2019年的38亿美元猛增到2025年的358亿美元&#xff0c;年复合增长率&#xff08;CAGR&#xff09;高达37.8%。推动数字孪生需求增长的几个因素包括&#xff1a;越来越广泛地采用物联网和云计算之类的技术用于实施数字孪生&#xff…

matlab 小波中心频率,小波频域特性Matlab实现.pdf

小波频域特性Matlab实现小波频域特性– Matlab实现东北大学信号与信息处理研究所栾峰 副教授/luanfeng/luanfeng编程示例例下面给出了一个信号的连续小波变换的例子。这个信号的第一个时间段包含了一个低频成分&#xff0c;最后一个时间段包含了高频成分&#xff0c;中间的时间…

yii3正式版什么时候发布_事业单位联考结束,成绩什么时候发布?合格分数线怎么算?...

今天上午&#xff0c;2020下半年全国事业单位联考笔试结束了。笔试刚刚结束&#xff0c;很多考生问图图有没有此次联考的答案&#xff0c;那肯定得有啊。为了帮助各位考生更好估分&#xff0c;华图教育推出估分系统&#xff0c;各位考生只需点击文末“了解更多”即可参与估分。…

Open Live Writer测试

************************我是可爱的分界线***************************转载于:https://www.cnblogs.com/elijahxb/p/6473105.html

德勤全球智慧城市2.0报告!中国占了世界一半

来源&#xff1a;德勤全球智慧城市新发展全球城市化的进程依然以不可阻挡的趋势向前推进&#xff0c; 到2050年&#xff0c; 接近70%的世界人口将生活在城市。人口大国中国和印度所在的亚洲将成为全球城市化最快的地区。在城市急速扩张的过程中&#xff0c; 先进的技术将帮助城…

python神经网络作用_Python · 神经网络(三*)· 网络

(这里是最终成品的 GitHub 地址)(这里是本章用到的 GitHub 地址)推荐先修章节&#xff1a;Python 神经网络(二*) 层Python 神经网络(三) 网络由于分形这个东西是在 tensorflow 的基础上实现的且相当麻烦、所以我就没在我自己的结构里面实现分形。因此&#xff0c;我自己实现的…

大公司里怎样开发和部署前端代码

作者&#xff1a;张云龙链接&#xff1a;https://www.zhihu.com/question/20790576/answer/32602154来源&#xff1a;知乎著作权归作者所有。商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处。没人邀请&#xff0c;看到这个问题不错&#xff0c;路过怒答。&#x…

5G产业发展最新进展深度解析(144页PPT)

来源&#xff1a;吴东升本报告对不同区域&#xff08;全球、美国、中国、日本、欧洲等&#xff09;的5G产业发展做了深入、全面的分析&#xff1b;对5G产业链和生态链以及主要产业应用状况做了系统盘点分析&#xff1b;对5G技术进展、投资环境和投资机会等也做了详细梳理。是5G…

php layui table,Layui table组件相关介绍

出现的问题&#xff1a;1、使用 Layui 官方提供的 【转换静态表格】 方式初始化加载时报 id 找不到的错误(自己的锅)2、传递参数问题使用的 table 加载刷新方案有一个页面&#xff0c;左侧是一个 tree&#xff0c;右侧是一个 table&#xff0c;默认 table 加载全数据&#xff0…

python中setpos_如何用类初始化Python中的多个turtle

only one turtle shown on screen. Two are defined in the code below.the turtles heading and coordinates arent being initialized.我相信问题是你定义了一次随机的位置和方向&#xff0c;在海龟创造循环之外&#xff0c;所以它们都从同一个地方开始&#xff0c;以相同的速…

存内计算能否成为下一代AI芯片的关键

来源&#xff1a;半导体行业观察随着人工智能的落地和大规模应用&#xff0c;AI芯片也成为了常见的芯片品类。AI芯片相比传统芯片来说&#xff0c;主要的竞争优势就在于高算力和高能效比。高算力是指能够比传统芯片更快地完成AI计算&#xff0c;而高能效比则是指能比传统芯片用…