最近发现网站的cpu 和 带宽占用率过高 ,不知道什么原因,求助 5C

图片说明

用Jstack命令 查看虚拟机堆栈信息如下
图片说明

求大神指导
2017-11-30 11:03:42
Full thread dump Java HotSpot(TM) 64-Bit Server VM (24.79-b02 mixed mode):

"http-nio-8088-exec-53" daemon prio=6 tid=0x00000000148cd800 nid=0x5b3c runnable [0x000000001755a000]
java.lang.Thread.State: RUNNABLE
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:152)
at java.net.SocketInputStream.read(SocketInputStream.java:122)
at com.mysql.jdbc.util.ReadAheadInputStream.fill(ReadAheadInputStream.java:114)
at com.mysql.jdbc.util.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:161)
at com.mysql.jdbc.util.ReadAheadInputStream.read(ReadAheadInputStream.java:189)
- locked (a com.mysql.jdbc.util.ReadAheadInputStream)
at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:3163)
at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3676)
at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3609)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4160)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:928)
at com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:2053)
at com.mysql.jdbc.MysqlIO.readSingleRowSet(MysqlIO.java:3554)
at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:491)
at com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:3245)
at com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:2413)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2836)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2825)
- locked (a com.mysql.jdbc.JDBC4Connection)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2156)
- locked (a com.mysql.jdbc.JDBC4Connection)
at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2323)
- locked (a com.mysql.jdbc.JDBC4Connection)
at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:208)
at org.hibernate.loader.Loader.getResultSet(Loader.java:1812)
at org.hibernate.loader.Loader.doQuery(Loader.java:697)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:259)
at org.hibernate.loader.Loader.doList(Loader.java:2232)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2129)
at org.hibernate.loader.Loader.list(Loader.java:2124)
at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:401)
at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:363)
at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:196)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1149)
at org.hibernate.impl.QueryImpl.list(QueryImpl.java:102)
at org.springframework.orm.hibernate3.HibernateTemplate$30.doInHibernate(HibernateTemplate.java:930)
at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:419)
at org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374)
at org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:921)
at org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:913)
at com.robust.home.dao.impl.ContentDaoImpl.queryAll(ContentDaoImpl.java:42)
at com.robust.home.service.impl.ContentServiceImpl.queryAll(ContentServiceImpl.java:34)
at sun.reflect.GeneratedMethodAccessor79.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy4.queryAll(Unknown Source)
at sun.reflect.GeneratedMethodAccessor79.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy5.queryAll(Unknown Source)
at sun.reflect.GeneratedMethodAccessor79.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy5.queryAll(Unknown Source)
at com.robust.home.action.GzdtContentAction.gzdt(GzdtContentAction.java:240)
at sun.reflect.GeneratedMethodAccessor646.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:441)
at com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:280)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:243)
at com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:165)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:252)
at org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:122)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:179)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:235)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:89)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:130)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:126)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:138)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:165)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:179)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:176)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
at org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:488)
at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at com.robust.home.filter.LoginFilter.doFilter(LoginFilter.java:67)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
- locked (a org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)

0

15个回答

应该是数据访问量大造成的,前提是要排除被攻击的可能

0

有可能是软件后台运行量大,内存跟不上,换个64位系统看看

0

可能是外部接口设备过多导致机器性能跟不上。

0

查看进程查看器,也有可能是中病毒了

0

1、查看访问量,如果访问量大看看是哪个ip的,因为百度等搜索引擎的爬虫会爬的。
2、检查日志,看看那些请求是多的

0
共15条数据 首页 2
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
服务器cpu占用过高宕机解决
对/etc/sysctl.conf文件修改这俩参数,重用以及释放net.ipv4.tcp_tw_reuse = 1net.ipv4.tcp_tw_recycle = 1修改完之后执行/sbin/sysctl -p让参数生效。dstat 看占用netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) prin...
关于程序出现cpu占用过高的问题排查、解决办法以及避免代码中出现cpu占用率过高
程序中出现cpu暂用率过高,一般是跳入死循环导致,当出现cpu暂用率过高,请先检查代码中循环(for、while)是否死循环,如果是线程中开的while循环干一件事,请检查while中是否调用sleep睡眠,如果没有睡眠一定会造成cpu占用率过高,因为不调用sleep,cpu不会切出去;所有线程中的while,请记得加sleep,这样可以避免cpu占用率过高的现象。 注:sleep(0)表示切出
Linux CPU占用率过高时问题排查
1.查看CPU占用率高的进程 1.1> top 1.2> 用ps -eo pid,pcpu | sort -n -k 2 2.确定高cpu消耗的线程 2.1>top -H 2.2>ps H -eo pid,tid,pcpu | sort -n -k 3 3.查看进程的线程 3.1>pstree -p pid...
记录一次tomcat的cpu使用率很高的监控
一、问题介绍 最近线上的管理后台tomcat老是出现CPU过高的问题。 二、命令详解 CPU分析—jstack jstack:Java提供的命令。可以查看某个进程的当前线程栈运行情况。根据这个命令的输出可以定位某个进程的所有线程的当前运行状态、运行代码,以及是否死锁等等。 过程如下: ps-mppid-o THREAD,tid,time这条命令可以找到耗用最高的线程和占用CPU的时间 printf...
为什么我的电脑这么卡(system占用CPU这么高)
最近我的电脑一直很卡,卡到打开一个文件目录也要等上一二秒的时间,我是通过网上查找资料,最后发现是QQ浏览器的问题。把它卸载后打开文件瞬间变快了。操作步骤: 第一步:先去下载一个progress explorer软件,安装后,打开找到System: 第二步:双击system后,会打开一个属性,找到Threads标签,通过CPU排序看那个占用的最高,发现是“TsQBDrv”调用最高。 第三步:选中
tomcat服务器cpu占用率居高不下的原因分析及解决
tomcat服务器cpu占用率居高不下的原因分析及解决偶遇服务器cpu飙升,过段时间后正常,反反复复获取cpu占用高的java进程运行中的堆栈信息 偶遇服务器cpu飙升,过段时间后正常,反反复复 尝试通过百度,谷歌等搜索,获取可行的解决方案无果,偶然的机会得知 fastthread 可视化分析工具,问题才能顺利解决。 获取cpu占用高的java进程运行中的堆栈信息 通过top命令查看cpu占用率高...
一次解决因GRPC导致的cpu占用率异常的经历
背景: 本人负责的一个数据转换项目(java)中用到了google的grpc远程调用框架,在移交测试后发现,程序持续运行一段时间后cpu占用率总会在一个时间点由<5%突变到>20%并且再也不会下降到原来的水平。经过一系列排查最终确定,是由于所使用的grpc(1.13.1)版本中包含了一个有bug的netty(4.1.25.Final)版本导致的。 解决过程: 由于并未及时...
linux服务器CPU占用过高
起因: redis所在服务器经常挂掉,导致数据丢失,虽然数据可恢复,但是终归影响使用。 排查过程: 首先检查redis的数据flushall指令发起IP,检查到是公司本身的另外一个日志服务器IP,所以暂时排除外部人员意外操作或代码原因; 然后排查linux系统是否存在问题,检查到一个系统中的一个message,然后根...
C 内存泄漏 CPU占用率过高问题
一。CPU占用率过高 while(1);空循环应加sleep延时。会造成CPU占用率过高 内存泄漏 二。内存泄漏 (fopen后要记得fclose,malloc之后要记得free,new之后要记得delete) 1.分配动态内存忘记释放      ifconfig_value = (char*)malloc(20);        free(ifconfig_value);   2....
IIS应用程序池CPU占用率分析专家
软件启动后, 将显示两个窗口,一个是,当前看到的窗口,IIS中所有应用程序池都显示出来了(包括未启动应用程序池),另一个是服务器活动应用程序池 CPU 占用率窗口。 首先在活动池中找出CPU占用率非常高的池,这个池最有可能是ASP程序存在问题的池。 在主窗口中,选择这个有问题的哪个池,然后选择“拆分池”,系统自动把选择池中WEB站点进行拆分,一个WEB站点建立一个池。这个时候,在查看池CPU占用率,那么出问题的WEB站点就显示出来了。 在IIS中停止这个站点,然后看CPU占用率是否还是100%。如果恢复正常,那么最有可能是这个站点存在问题。
一例由于一网站cpu占用过高导致服务器cpu占用始终是100%的问题解决
网站晚上还好点,白天打开一个页面要很长时间。用远程连接到服务器也很慢,连上后,打开任务管理器,发觉某网站的w3wp.exe cpu能占到80%多,整个服务器的cpu基本都是在100%。查看windows 事务日志,及网站日志,并没有发现有什么异常的情况。因为这个服务器是新换的,在原服务器上虽然内存占用很高,一直都是百分之九十多,但CPU很少超过10%的。可以排除是程序代码的问题。 由于原服务器在
如何排查CPU占用过高以及常见的几种情况
在最近上线过程中遇到cpu占用率过高问题由于问题已解决,此时仅重现操作方法1.先用top命令,找到cpu占用最高的进程 PID  如上图2.再用ps -mp pid -o THREAD,tid,time   查询进程中,那个线程的cpu占用率高 记住TID3.jstack 29099 >> xxx.log   打印出该进程下线程日志4.sz xxx.log 将日志文件下载到本地5.将查...
cpu占用率过高问题排查
背景介绍:项目war包发布到测试环境后,刚开始运行正常,过了一段时间所有查询都报504错误。登陆测试服务器查看日志,发现查询一直在报获取不到数据库连接的错误(数据库连接池用的是druid)。把配置文件下载到本地,本地代码正常运行,应该不是数据源配置的问题。楼主于是用了重启大法,重启后所有请求都正常了。但是接着发现一个很严重的问题,就是项目启动的时候cup占用率就到了100%,接着就开始了cpu占用...
linux下用top命令查看cpu利用率超过100%
今天启动一个高负载的进程。我用top命令监控系统。发现cpu的占用比例常常显示120%以上。 我的机器是8cpu的。 经过在网上搜索,发现top命令显示的是占用的cpu总数。 即8cpu时top下cpu利用率最大可以到达800%。 如果你的进程利用了多个cpu,那么top命令显示的是多个cpu占用率的总和。 所以top命令下查看到的cpu利用率是可能超过100%的。 记
记录一次java进程cpu占用过高问题排查
问题描述: 新版本灰度升级后,调用一个新接口,马上cpu会飙升到100+,并且实例再无响应,并且过几分钟后,cpu占用率会降下来,但是实例无法再提供服务,并且进程并没有死亡。 环境: jdk:1.8 spring cloud: Daltson.RELEASE 排查办法: 1.查看此实例的进程号:top命令 2.查看此进程中占用最高的线程:ps -mp pid -o THREAD,tid,time...
计算机CPU占用率居高不下,经常100%,目前解决方面如下
1 启动任务管理器 ,找到explorer.exe,结束进程 、  2创建新任务 备注:这只是针对我的电脑的解决方法,如果您没有解决,请参考其他解决方案。
linux排查java进程占用CPU过高原因方法
前言 在运维tomcat服务器时,我们通常会发现cpu的负载过高,大多数原因是由于java代码的bug引起的。可能你的java代码有很多,文件也有很多,一行一行的排查是很费时间的。这时我们就可以使用jstack、top等工具对引起问题的代码进行定位,通过更改代码来从根本上解决问题。(如果服务是很久以前的,那么牵一发而动全身,就很难通过更改代码来到达目的,这时就只能重启相关的服务来降低负载了。...
关于WEBAPI 开启后CPU占用居高不下的解决方法
关于WEBAPI 开启后CPU占用居高不下的解决方法 近期做了一个WPF+webapi+selfhost的项目,发现当UI不进行任何操作时CPU占用竟然也高达25%,后台一直在执行这样一个线程: Thread td = new Thread(new ThreadStart( () => { ...
system_server等应用CPU占用率过高诊断的一种方法
问题 在测试过程中,我们通常发现诸如system_server,通过top命令查看这些应用一直在前 adb shell top查看这些一直在前列   这样我们就需要明确这些应用里面的线程哪个占用过多 使用 adb shell ps -t -p 刚刚的命令可以查询当前进程中的线程情况。这些对于开发了解哪些线程在占用cpu和资源很有帮助 adb she
linux CPU占用率高
如下图:top命令查看,linux总的CPU占用率很高,但是单进程没有CPU占用率高的,这怎么解决?
解决Scrapy性能问题——案例一(CPU饱和)
症状:有时你增加并发水平,但是性能没有增长。下载器的利用也很充分,但是似乎每个请求的平均时间都很长。在Unix/Linux上使用top命令或者在Power Shell上使用ps或者在Windows上面使用任务管理器时,发现发现CPU的负载很高。示例:假设你运行了以下的命令:$ for concurrent in 25 50 100 150 200; do time scrapy crawl
【生产问题】线上CPU使用率过高问题排查
1、问题描述    最近在生产上遇到一个HashMap问题,高并发下HashMap扩容导致链表成环,导致CPU使用率过高。2、问题排查       CPU利用率过高一般是因为出现了出现了死循环,导致部分线程一直运行。占用cpu时间。使用jstack工具dump出问题的那台服务器的栈信息。死循环的话,首先查找RUNNABLE的线程,找到问题代码如下:HashMap在高并发的环境下会出现死循环,主要是...
web应用部署到Linux服务器上,CPU占用过高
web应用部署到Linux服务器上,CPU占用过高公司项目部署到LINUX服务器上后,过了一段时间,CPU过高,开始寻找原因有这么几步: 1.通过top命令(top之后再按shift+H可以显示线程)查看CPU使用率高的线程; 2.将这个线程号转换为16进制; 3.使用jps查看服务器的Java进程号; 4.使用jstack [进程号] 打印当前的进程堆栈; 5.从打印的信息中,找到第2步
真机调试时,Xcode显示cpu占用超过100%
调试的时候发现CPU的使用率竟然达到了100%,而且用了一会儿手机就很烫 image.png 上网参考了这篇,没找到合适的解决方案 https://www.cnblogs.com/isItOk/p/6582878.html 然后又看到了这个http://www.cocoachina.com/bbs/read.php?tid=1693642 发...
关于Java CPU占用过高的问题解决总结
    以前做压测的时候,遇到过CPU过高的情况,但是没有总结,今天又遇到这种情况,导致到处找资料,虽然知道思路,但是很多命令都要重新找度娘或谷歌。所以这次总结下:   现象:项目突然宕机,连到服务器上发现CPU 接近800%(8核)。   步骤1:首先top命令查看CPU占用最高的进程,发现是java进程(32691)。 步骤2:在top界面按下“H”(centOS,ubunt...
java cpu占用率过高解决
服务器为Windows 一、下载ProcessExplorer https://pan.baidu.com/s/1jAdzeZ7dUEib1_xbpu9UlA 二、通过任务管理器查出CPU占用率高的程序pid 三、启动ProcessExplorer 四、查看CPU占用高的tid,用计算器换成16进制数 五、进入java bin目录,用命令行 jstack 7464 > c:/...
MongoDB CPU占用率高的原因分析
通过查找Stack Overflow找到相关问题的解答跟索引相关使用db.currenyOp();命令得到正在执行的命令(增删改查)以及通过ns来查看是否正在使用索引'ns':'collections.system.indexes';            同时,查看MongoDB log日志 MongoDB日志器会打印索引查询时间超过100ms的操作,发现当前数据库打印的数据查询超过400ms,...
win10中System占用内存、CPU过高问题的解决方法
第一步 : 问题分析 下载Process Explorer程序 网址:https://process-explorer.en.softonic.com/ 打开Process Explorer主窗口,双击SYSTEM进程,点击“Threads”选项卡,然后单击“CPU”列名,此时所有子线程都按照CPU占用率排列,我们找到线程中占用率最高的子线程。 多数情况都是“ntoskrnl.exe”...
Linux下CPU占用率高分析方法
一、可能有线程一直占用CPU资源 1. 先通过 ps 查看进程状态,找出进程的PID(8209)。 2.jstack -l 8209 > /usr/local/work/tomcat/8209.stack 导出PID对应的线程信息到文件 3.对导出的线程文件下载本地做分析(可以文本打开) 4. 通过top -H -p 8209 命令查看对应进程是哪个线程占用CPU过高(eg:8308...
查找c++进程cpu占满的原因
最近运行服务器程序,在特定触发条件下,发现某个进程CPU占用率超过100%,心里一惊,因为服务器用c++写的,就决定调试下。 先按网上说的使用pstack指令打印cpu占满的进程的堆栈信息. 其中 pstack是基于gdb封装的shell脚本,有兴趣的可以去看一下。 pstack pid 发现正常的进程的堆栈显示比较正常,异常的进程的堆栈闲显示就全是??。 这个方法行不通,就换gdb...
java应用cpu使用率过高问题排查
---------------------------------------linux下如何定位代码问题------------------------------- 1、先通过top命令找到消耗cpu很高的进程id假设是123 2、执行top -p 123单独监控该进程 3、在第2步的监控界面输入H,获取当前进程下的所有线程信息 4、找到消耗cpu特别高的线程编号,假设是123 5、...
Qt程序CPU占用率较高的解决办法
Qt程序CPU占用率较高的解决办法 分析思路 总的来说,Qt程序CPU占用率较高的原因可能有以下几点: 1、在paintEvent中调用update函数,造成无限循环 2、频繁刷新数据 3、复杂的浮点运算 4、死循环 5、paintEvent里操作太多 我遇到这个问题的程序是利用多个子线程(接收子线程)同时接收并解析网口的数据,同时另外一个子线程(融合子线程)对多个子线程解析得到的数据进行融合...
tomcat cpu暴涨的原因之一及其解决方法
当你使用tomcat部署web系统时,过了一段时间发现cpu暴涨,你不防试试下面的方法,看看是否程序内的死循环导致cpu暴涨。 第一步:增加tomcat监控对外端口 在你的tomcat的bin目录下找到catalina.sh在二行加上 [code="java"] JAVA_OPTS='-server -Xms1024m -Xmx1024m -XX:PermSize=128M -XX...
Java进程CPU占用率高的分析方法
有时会碰到Java进程莫名CPU占用率高的问题,如何分析定位问题?如果能定位到当前正在执行的代码就好了。既然有思路了,那就找工具吧: 1、查询Java进程信息 使用JDK自带的进程状态工具jps jps -v 执行得到以下结果: 结果第一列30731为PID,第二列Bootstrap为main class(如想显示全名,用jps -v -l),后面为JVM参数。 2、找出引起性能...
CPU使用率过高及优化方法
android系统中CPU使用率这一块在性能优化中也是非常重要的一个环节,接下来说一下我自己做优化的一些心得一、问题的由来近期做了一个项目,代码量比较少,但是CPU使用率达到18%-20% 如图红色边框里面是该应用的CPU使用率百分比 ( 这里包名做了涂鸦处理) 测试方法可以借助性能优化工具或者死办法注释掉认为可能导致问题的代码,然后再盘查;一般来说手机应用功能比较多的,CPU使用率达到30-4
Linux环境mysql cpu过高问题排查
Linux环境mysql cpu过高问题排查今早同事说系统很卡,自己操作了一下,确实变的很慢,登录mysql客户端,统计了一下客户调用返回速度,比预期慢了三倍,于是排查开始:思路 首先登录服务器,top命令查看系统资源使用情况,内存是够的,但是mysql的cpu使用率已经飚到了700%+,问了下客户,他们有一批存量数据,开启了多线程跑我们系统的接口,此时系统是不能停止的。 此时排查具体问题。
vscode cpu占用率过高
打开vscode之后,点击文件–>首选项–>设置 搜索search.followSymlinks 值修改为false
嵌入式linux CPU占用率高的调试方法
1,主要是使用top命令,可看出哪个进程CPU占有率过高,但嵌入式linux的top是由busybox编译出来的,属于轻量级。PC上有的功能,嵌入式平台上可能没有,譬如“top -H”等。 2,另外ps命令可以看到各个进程的pid,包括内核线程,内核线程看起来更像用户态的进程 3,知道哪个进程占用过高后,可试着在用户态上动态修改进程的优先级,如:renice -19 383,其中-19是新的n...
linux问题排查 - 高cpu占用率的进程和线程
1.简介           一个程序,完成它预设的功能,并不能说明它是一个优良的程序。好的程序,应该是对资源的合理利用,亦或是 用更少的资源(使用合理的算法),实现更多有效的产出。       影响程序的资源一般而言分为4个:CPU、内存、IO、网络。本文着重讲解一下在linux系统下,如何查看高CPU占用率的进程,线程。        2.python代码       为了
jca分析java dump日志
可以使用jca分析java  dump的日志 jca:https://www.ibm.com/developerworks/community/groups/service/html/communityview?communityUuid=2245aa39-fa5c-4475-b891-14c205f7333c 运维报说是某机房突然全部都线程阻塞了 其中锁住了tcp的