tomcat在一台电脑上运行出现一两个小时后cpu占用从0%到18%并一直这样 5C

系统版本 windows server 2008 R2 64位
JDK 1.8.0_162-win32
Tomcat-9.0.5-win32
数据库 MySQL 5.7.21-win32

图片说明

            32线程 32g内存
            问题描述:在一台以上配置的电脑,开启一两个小时后cpu占用从0%变成18%,没有定时任务,有6个线程都占用3.11%的cpu(在其他电脑上系统版本和jdk tomcat mysql版本一样未出现该种情况)
            通过jstack吧进程发现以下6个线程占用cpu,没有发现与业务代码的关联


            "ajp-nio-28009-ClientPoller-1" #47 daemon prio=5 os_prio=0 tid=0x169a4000 nid=0x3e4c runnable [0x1d73f000]

java.lang.Thread.State: RUNNABLE
at sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
at sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:296)
at sun.nio.ch.WindowsSelectorImpl$SubSelector.access$400(WindowsSelectorImpl.java:278)
at sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:159)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
- locked (a sun.nio.ch.Util$3)
- locked (a java.util.Collections$UnmodifiableSet)
- locked (a sun.nio.ch.WindowsSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
at org.apache.tomcat.util.net.NioEndpoint$Poller.run(NioEndpoint.java:710)
at java.lang.Thread.run(Thread.java:748)

Locked ownable synchronizers:
- None
"ajp-nio-28009-ClientPoller-0" #46 daemon prio=5 os_prio=0 tid=0x169a3c00 nid=0x81064 runnable [0x1d52f000]
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.WindowsSelectorImpl.resetWakeupSocket0(Native Method)
at sun.nio.ch.WindowsSelectorImpl.resetWakeupSocket(WindowsSelectorImpl.java:473)
- locked (a java.lang.Object)
at sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:174)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
- locked (a sun.nio.ch.Util$3)
- locked (a java.util.Collections$UnmodifiableSet)
- locked (a sun.nio.ch.WindowsSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
at org.apache.tomcat.util.net.NioEndpoint$Poller.run(NioEndpoint.java:710)
at java.lang.Thread.run(Thread.java:748)

Locked ownable synchronizers:
- None

"http-nio-28080-ClientPoller-0" #32 daemon prio=5 os_prio=0 tid=0x17b34400 nid=0x687dc runnable [0x1cb0f000]
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.WindowsSelectorImpl.resetWakeupSocket0(Native Method)
at sun.nio.ch.WindowsSelectorImpl.resetWakeupSocket(WindowsSelectorImpl.java:473)
- locked (a java.lang.Object)
at sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:174)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
- locked (a sun.nio.ch.Util$3)
- locked (a java.util.Collections$UnmodifiableSet)
- locked (a sun.nio.ch.WindowsSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
at org.apache.tomcat.util.net.NioEndpoint$Poller.run(NioEndpoint.java:710)
at java.lang.Thread.run(Thread.java:748)

Locked ownable synchronizers:
- None
"http-nio-28080-ClientPoller-1" #33 daemon prio=5 os_prio=0 tid=0x17b34800 nid=0xb3230 runnable [0x1cc5f000]
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.WindowsSelectorImpl.resetWakeupSocket0(Native Method)
at sun.nio.ch.WindowsSelectorImpl.resetWakeupSocket(WindowsSelectorImpl.java:473)
- locked (a java.lang.Object)
at sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:174)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
- locked (a sun.nio.ch.Util$3)
- locked (a java.util.Collections$UnmodifiableSet)
- locked (a sun.nio.ch.WindowsSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
at org.apache.tomcat.util.net.NioEndpoint$Poller.run(NioEndpoint.java:710)
at java.lang.Thread.run(Thread.java:748)

Locked ownable synchronizers:
- None

"NioBlockingSelector.BlockPoller-2" #14 daemon prio=5 os_prio=0 tid=0x15a96000 nid=0x48494 runnable [0x1669f000]
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
at sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:296)
at sun.nio.ch.WindowsSelectorImpl$SubSelector.access$400(WindowsSelectorImpl.java:278)
at sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:159)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
- locked (a sun.nio.ch.Util$3)
- locked (a java.util.Collections$UnmodifiableSet)
- locked (a sun.nio.ch.WindowsSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
at org.apache.tomcat.util.net.NioBlockingSelector$BlockPoller.run(NioBlockingSelector.java:298)

Locked ownable synchronizers:
- None
"NioBlockingSelector.BlockPoller-1" #13 daemon prio=5 os_prio=0 tid=0x15a8ec00 nid=0x8b6c8 runnable [0x1664f000]
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
at sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:296)
at sun.nio.ch.WindowsSelectorImpl$SubSelector.access$400(WindowsSelectorImpl.java:278)
at sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:159)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
- locked (a sun.nio.ch.Util$3)
- locked (a java.util.Collections$UnmodifiableSet)
- locked (a sun.nio.ch.WindowsSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
at org.apache.tomcat.util.net.NioBlockingSelector$BlockPoller.run(NioBlockingSelector.java:298)

Locked ownable synchronizers:
- None

1个回答

64位系统,又那么多内存,为什么用MySQL 5.7.21-win32,这是32bit的版本,应该用64bir的才好。看下是不是内存垃圾回收影响了性能。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
在一台电脑上运行两个tomcat
在一台电脑上跑两个tomcat的做法: 一、把tomcat放到不同的目录下 二、为避免端口占用冲突,把其中一台的端口8080改成别的,例如8085 三、配置tomcat环境变量CATALINA_BASE和CATALINA_HOME 四、两个tomcat的环境变量如果相同会互相影响,可以给第二个tomcat环境变量配成其他名字,例如CATALINA_BASE2和CAT
一台电脑上运行两个tomcat
1.建立两个文件夹,tomcat1,tomcat2,分别在里面放入tomcat7文件(非安装版) 2.改配置 tomcat1中的配置就不用改了,直接用默认配置 tomcat2中的配置要改要,改conf目录下的server.xml文件 ①改SHUTDOWN的端口,默认为8005,这里改为8105 ②改访问端口号,默认为8080(tomcat1没改,默认就是8080)
在一台电脑上运行多个tomcat
需求: 同时启动不同的tomcat(版本不限制) 注意事项: 不要在电脑的环境变量中配置tomcat相关的配置。例如:PATH和CATALINA_HOME等。 解决办法: 1.首先去apache下载一个tomcat,下载解压版的,比较方便。 2.修改conf/server.xml文件,修改地方有三处 如图 ...
在一台电脑上安装多个Tomcat并运行
准备工作:电脑中已经安装了jdk,下载了tomcat的压缩包eclipse-jee-neon-1-win32-x86_64.zip第一步:解压tomcat到 E:\tomcat8-3第二步:修改E:\tomcat8_3\conf\server.xml文件 中的三个端口1.<Server port="8005" shutdown="SHUTDOWN">改为没有被占用的端口,如80352.<Connec
一台电脑运行多个tomcat
一个tomcat运行几个程序会出现内存溢出,本来想解决内存溢出的问题的,看了好几篇博客后,自己试了一下,内存溢出还是解决不了。那就换个思路了,一台电脑运行多几个tomcat就行了。这个配置的也是从另一篇博客上看来的。windows环境下第一个tomcat不变,后面的按下面的配置需要配置3个文件:1.bin文件夹下的 Catalina.bat 和 startup.bat 中的rem Guess ...
一台电脑上两个tomcat
一台电脑设置两个tomcat,对应两套环境变量 CATALINA_BASE1=E:\software\apache-tomcat-7.0.47copy CATALINA_BASE=E:\software\apache-tomcat-7.0.47 CATALINA_HOME1=E:\software\apache-tomcat-7.0.47copy CATALINA_HOME=E:\software\apache-tomcat-7.0.47 CLASSPATH = .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar JAVA_HOME = C:\Program Files\Java\jdk1.7.0_21 Path=C:\Program Files (x86)\Common Files\NetSarang;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;%CATALINA_HOME%\lib\servlet-api.jar;E:\az\toroiseSVN\bin;C:\Program Files\VisualSVN Server\bin
tomcat占用cpu很高
我用tomcat的datasource连接池,激活的是1000个连接,数据库用的是oracle10g。rn现在遇到一个问题,linux进程里,java占得cpu基本是100%。rn服务会很频繁的调用webservice接口,每次传100K左右的数据,rn是不是服务器与webservice调用太频繁了,导致cpu升的很高呢??rn大侠们 帮帮忙 谢谢啊!
开发的工程运行一两个小时就没反应了
服务器tomcatrn架构strutsrn数据库连接没有在struts-config配置rn而是在tomcat下的conf的server.xml配置的rn会不会影响效率?rn我现在开发的工程运行一两个小时就没反应了?rn是不是这个原因?
oracle.exe一直占用cpu 100%
安装的是oracle 10g,系统是win xp.个人使用,没有其他连接.rn每次只要打开oracle的服务,oracle.exe就一直会占用cpu 100%.rn数据库装了有一段时间的,但没有什么操作,只建过一个用户,几张表,没有其他操作.rn以前启动正常,有过半年不用,最近只要一启动就会占cpu 100%,而且是一直占用,一个小时后也是这样的结果.到现在只有两三次启动正常,rn希望哪位大侠能有什么好的解决方案,偶实在不知道问题出在什么地方!! 谢谢了。
在一台电脑上部署多个tomcat并启动项目
1.需求 原本的机器上已经有一台tomcat了,为了不影响之前的项目,新部署一个,跑项目。 2.实现 1.将tomcat压缩包复制到新建的文件夹c盘的aaa,解压 2.将C:\aaa\apache-tomcat-7.0.85\webapps下的所有文件删除, 导出的bbb.war放入C:\aaa \apache-tomcat-7.0.85\webapps 3.在路径C:\aaa\apach...
一台电脑同时运行多个tomcat
1、下载解压缩版tomcat 2、将tomcat解压两次或多次,放置在不同目录下或者取不同名,例如: 3、增加环境变量CATALINA_HOME2,作为新的tomcat的地址 4、修改新的tomcat中的 /bin/startup.bat,把其中所有的CATALINA_HOME更改为CATALINA_HOME2 5.修改新的tomcat中的catal
一台电脑运行多个tomcat配置文件修改
一台电脑运行多个tomcat配置文件修改修改conf下 server.xml文件 修改conf下 server.xml文件 &amp;lt;!--#####第一个要改的地方 8087 --&amp;gt; &amp;lt;Server port=&quot;8007&quot; shutdown=&quot;SHUTDOWN&quot;&amp;gt; &amp;lt;!--#####第二个要改的地方 9087 18387 18087 --&amp;gt; &amp;lt...
一台电脑如何运行多个tomcat
1修改conf/server.xml文件:  &amp;lt;Server port=&quot;8005&quot; shutdown=&quot;SHUTDOWN&quot;&amp;gt;把端口改为没有是使用的端口,如8006 &amp;lt;Connector port=&quot;8080&quot; protocol=&quot;HTTP/1.1&quot;    connectionTimeout=&quot;20000&quot;     redirectPort=&quot;8443
tomcat一台电脑多个tomcat
多个tomcat部署在一个服务器上的文档应用。自己查阅资料总结。
如何在一台电脑上运行多个tomcat
1.首先将tomcat下的conf下的server.xml中的下面三个端口号等改为不一样的,&amp;lt;Server port=&quot;8015&quot; shutdown=&quot;SHUTDOWN&quot;&amp;gt; &amp;lt;Connector port=&quot;8088&quot; protocol=&quot;HTTP/1.1&quot; connectionTimeout=&quot;20000&quot;
如何在一台电脑上运行两个或多个Tomcat
1.分别手动运行两个Tomcat里面的startup.dat。 tomcat6.0的运行情况: tomcat7.0的运行情况:之后会一闪而过,即两个tomcat不能同时运行。 2.解决方法: Tomcat6.0不做修改(其端口号为8081),只对Tomcat7.0做修改(端口号改为9090) 1)在系统环境变量中增加JAVA_HOME2=C:\Program
一台电脑上运行多个Tomcat的配置步骤
配置多个Tomcat中第一个配置可以不变,这里以配置两个Tomcat为例第一个配置不变,第二个Tomcat的配置为    首先是启动文件        设置一下运行环境和此bin目录所在的路径即可,即在startup.bat最上边中添加以下两行        SET JAVA_HOME=D:\Program Files\java\jdk1.7.0_10    rem jdk所在的目录       ...
在一台电脑上同时运行多个tomcat,请问怎么搞?
如题
一台电脑多个tomcat
原文:https://blog.csdn.net/T_ZZZ/article/details/76906599 当电脑上面已经有了一个tomcat之后,重新安装新的tomcat需要: 一.找到tomcat2的路径,进入conf,修改server.xml 修改下面内容: 1. 2. 3. 二.配置环境变量。 安装tomcat2的时候还需要配置第二个CATALINA_HOME2 然后修改tomcat2...
一台电脑上安装多个tomcat服务
tomcat安装成windows 服务 对于这种方式是建立在tomcat端口修改之后的基础之上的,也就是说你已经修改好tomcat端口了。 再说安装服务 有两个方式第一种是直接在dos里面操作、第二种新建一个后缀为 .bat 的批处理文件,将所有命令写在批处理里面,然后直接运行批处理就行了,其实都差不多 萝卜青菜各有所爱,我就喜欢后面哪种,因为运行完以后文件还在,下次还是可
一台电脑上部署多个tomcat
如果一台电脑上部署两个tomcat,需要修改server.xml的三个端口,而不是一个端口,切记切记! <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with
在一台电脑上同时启动两个tomcat
最近在学习cms快速建站系统,由于公司已经有一个在做的项目,自己又在研究cms的工作流程,所以需要启动两个tomcat。 (翻到最后直达结果) 首先我们要了解一下tomcat根目录下的 server.xml里面几个默认的端口号: server port=”8005“:负责关闭tomcat服务 Connector port=”8080“:负责建立http连接
在一台电脑上同时启动多个tomcat
        关于tomcat(非安装版)需要的几个主要的环境变量,有java_home,catalina_base,catalina_home,可以在计算机的属性----&amp;gt;高级----&amp;gt;环境变量中先设置好一组适用于某一个tomcat的值,然后再cmd中启动tomcat,启动完之后,用命令set catalina_base=新的tomcat目录位置,set catalina_home...
同一台电脑启动多个tomcat
首先需要知道的是,我们不通过Eclipse等其它工具启动Tomcat而通过手动启动Tomcat的时候是需要配置环境变量的。而我们启动Tomcat的时候,则需要读取环境变量中的相关配置来运行。也就是说,假如我有多个Tomcat,而启动的时候都是启动环境变量里面的Tomcat。这样便会因为端口冲突而导致启动失败了。 假如我们想要启动多个Tomcat,则需要在环境变量中下手了。Tomcat
一台电脑上配置两台tomcat
参考文件 1:http://zghbwjl.blog.163.com/blog/static/12033667220107935846670/ 参考文件 2:http://www.cnblogs.com/hewenwu/p/4177839.html 参考文件 3:http://www.jb51.net/article/110373.htm 首先一台电脑上装配一个tomcat是不需要配
一台电脑上配置多个tomcat,详解
  在服务器上配置了多个tomcat,每个tomcat下的项目都独立运行。 我这边是一台机器上配置5个tomcat,一个简单的搭建教程和大家分享! 1.拷贝出多个tomcat目录,需要把tomcat的名称改为不相同的。 2.环境变量配置。 我的电脑-》右键属性-》高级系统设置-》环境变量 需要配置多个CATALINA_HOME和CATALINA_BASE。 3.修改tomcat...
从一台电脑传输数据到另外一台电脑
PB实现从一台电脑传输数据(数据量非常小)到另外一条电脑,要怎么设计?
一台电脑上启动两个tomcat方法
     由于两个工程分别部署在不同的服务器下,一个用来开发,一个用来测试,需要同时启动两个tomcat,如图apache-tomcat-6.0.35是开发服务器,apache-tomcat6test用来测试: 以下是方法: 1.特别要注意:不要设置CATALINA_HOME      2.分别修改安装目录下的conf子目录中的server.xml文件:      a.修改ht...
在一台电脑上同时运行多个MySQL
如果你的电脑上有两个或者多个MySQL,并且其中一个MySQL在开启的时候,其他的MySQL就会闪退或者无法启动,那么你可以试试我的方法。▍问题分析产生这种现象的原因可能是端口占用:每台计算机都有很多个的端口,而一个端口只允许一个运行一项服务,当出现多个服务同时需要使用一个端口的时候,就会出现端口占用的情况。例如:想在一台就算机上运行两个MySQL,每一个MySQL都是一项服务,两个MySQL就是...
服务程序在一台电脑上怎么运行多份
比如一个服务程序service1,displayName=‘邮件服务’。想在一台服务器上运行多份,名字端口都可以自己定义,该如何做。
一台电脑上运行多个Tomcat服务器
本示例以开启两个Tomcat服务器为例 注:使用绿色版(非安装版)Tomcat解压程序; 1、为另一个Tomcat增加环境变量,变量名为CATALINA_HOME2,变量值为新的tomcat的安装地址; 2、修改另一个Tomcat中的startup.bat,把其中的CATALINA_HOME改为CATALINA_HOME2; 3、修改另一个Tomcat中
同时在一台电脑上运行两个Tomcat配置
版权声明:本文为博主原创文章,未经博主允许不得转载。 一台电脑同时运行多个tomcat配置方法: 1.使用压缩版的tomcat不能使用安装版的。  2.第一个tomcat的配置不变。  3.增加环境变量CATALINA_HOME1和CATALINA_BASE1,值为新的tomcat的地址。   4.修改新的tomcat中的startup.bat,把其中的CATAL
网络服务器运行一两个小时后CPU的占用率就渐至100%是怎么回事?
如题。
在特定的一台电脑上出现C0000005错误
很早以前用vfp6+sp5作的一套程序,在各个机器上一直用的好好的,今天放到另一台电脑上,不时出现C000005错误。不知道是什么原因。另外好像是textbox那里输入时出的错,网上有人说是VFP自带的textbox漏洞会造成这种错误,搜索半天也没找到解决办法,不知道那位朋友有这方面的资料给我看看。
mysql主从复制(一台电脑上)
准备:安装两个mysql,已装好 主机配置(这里用第一个mysql当主机,也就是C盘里面那个) 1.关闭主机服务,修改my.ini 2.修改data文件夹里面auto文件 uuid本来是33be被我改成22了,是为了防止跟从库的uuid一样 3.启动主机服务   这时候会在这个时候在C:\ProgramData\MySQL\MySQL Server 5.7(就是my文件所在目录)...
在一台机器上写好的javaweb换了一台电脑,出现错误<%
The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path 下面是具体的解决方法: 1、右击web工程-》属性或Build Path-》Java Build Path->Libraries-> Add Libray...->Server Runtime -》Tomcat Ser
一台电脑开多个Tomcat
下载解压版Tomcat安装配置好jdk记事本打开tomcat/bin/startup.bat前两行加入:SET JAVA_HOME=C:\soft\java8 SET CATALINA_HOME=C:\soft\apache-tomcat-7.0.82 修改tomcat/conf/server.xml修改几处: <!-- <Server port="8005" shutdown="SHUTD
一台电脑启动多个tomcat
1.首先下载解压缩版的tomcat;   2.分别命名为tomcat1和tomcat2;   3.分别进入config目录下,打开server.xml文件      修改3处地方,如下:       1)&amp;lt;Server port=&quot;8002&quot; shutdown=&quot;SHUTDOWN&quot;&amp;gt;             port端口号修改为不同;             2)t...
一台电脑安装多个tomcat
windows下面,一台电脑安装多个tomcat。我安装了2个tomcat 6.0,下载地址http://tomcat.apache.org/download-60.cgi。选择6.0.32目录下的binary distributions下的core 我电脑是32未windows系统,选择了32位windows zip文件。 1).解压缩到2个目录,对于每个tomcat 6.0目录,打开...
生产环境出现CPU占用过高
top =&gt; ps -ef或者jps =&gt;ps -mp 2640 -o THREAD,tid,time =&gt; printf “%x\n” 2640 =&gt;jstack 2640 | grep a50(16进制线程ID小写英文) -A60
相关热词 c# 线程结束时执行 c# kb mb 图片 c# 替换第几位字符 c#项目决定成败 c# 与matlab c# xml缩进 c#传感器基础 c#操作wps c# md5使用方法 c# 引用父窗口的组件