精华内容
下载资源
问答
  • Tomcat进程守护

    2009-08-21 16:45:21
    此小程序专门用来守护Tomcat进程 【运行方法】 直接双击TomcatWatcher.jar 程序通过访问http://localhost和输入的Tomcat端口来访问Tomcat主页,如果获取到返回串证明Tomcat运行中,否则检测JAVA.EXE进程是否存在。...
  • 前些时日,出于某种需要,需要同时启动Tomcat服务器,在网上查了半天,才找到解决的办法,拿出来分享一下,嘿嘿。 我所用Tomcat服务器都为zip版,非安装版。以两个为例: 安装第二个Tomcat完成后,到安装...
     
    
    前些时日,出于某种需要,需要同时启动多个Tomcat服务器,在网上查了半天,才找到解决的办法,拿出来分享一下,嘿嘿。

    我所用Tomcat服务器都为zip版,非安装版。以两个为例:
    安装第二个Tomcat完成后,到安装目录下的conf子目录中打开server.xml文件,查找以下三处:

      (1) 修改http访问端口(默认为8080端口)
             
    <Connector   className="org.apache.coyote.tomcat4.CoyoteConnector"   port="8080"   
                                   minProcessors
    ="5"   maxProcessors="75"
       
                                    enableLookups
    ="true"   redirectPort="8443"
       
                                    acceptCount
    ="100"   debug="0"   connectionTimeout="20000"
       
                                    useURIValidationHack
    ="false"   disableUploadTimeout="true"   />
     

    (大概在86行左右)将8080修改为第一个tomcat不在使用的端口号。此处所设的端口号即是以后访问web时所用的端口号。  

      (2) 修改Shutdown端口(默认为8005端口)
       
    <Server port="8005" shutdown="SHUTDOWN" debug="0">

        (大概在13行左右)将8005修改为没有在使用的端口号,例如8095   

      (3) 修改JVM启动端口(默认为8009端口)
             
       < Connector    className ="org.apache.coyote.tomcat4.CoyoteConnector"    
                                    port
     ="8009"    minProcessors ="5"    maxProcessors="75" 
       
                                    enableLookups
     ="true"    redirectPort ="8443" 
       
                                    acceptCount
     ="10"    debug ="0"    connectionTimeout="20000" 
      
                                    useURIValidationHack
     ="false" 
       
                                   protocolHandlerClassName
     ="org.apache.jk.server.JkCoyoteHandler" />

      (大概在107行左右)将8009修改为没有在使用的端口号,例如8099   
       
    这样就没问题了。
    展开全文
  • Tomcat多线程模型浅析

    千次阅读 2018-05-13 19:00:14
    我们在上一部分文章里已经看到了,Tomcat的架构是如何一步步构建出来,但是在后台服务器的构建中,一个很重要的问题是如何实现线程?一般情况下,如果我们来实现最初步的想法就是:不断循环接收客户端的连接,每个...

    我们在上一部分文章里已经看到了,Tomcat的架构是如何一步步构建出来,但是在后台服务器的构建中,一个很重要的问题是如何实现多线程?一般情况下,如果我们来实现最初步的想法就是:不断循环接收客户端的连接,每个连接构建一个线程,然后进行相关的数据处理!但是,实际上我们应该考虑的更多,比如如何选用BIO还是NIO等等?所以,我们来借鉴一下Tomcat的多线程设计思路!

    首先Tomcat的设计了专门的连接线程,即所有的客户端连接都通过这类线程来处理,一旦建立连接就把获得的客户端socket交由轮询线程来处理,轮询各个客户端后再对已经准备好的客户端构建一个线程,交由线程池来处理Request和Response!如果你看源码将会发现实际上线程模型的基础AbstractEndpoint,每一种实现包含一种连接、和数据处理方式,我们以NioEndpoint为例,它包含LimitLatch、Acceptor、Poller、SocketProcessor、Excutor5个部分。LimitLatch是连接控制器,它负责维护连接数的计算,nio模式下默认是10000,达到这个阈值后,就会拒绝连接请求。Acceptor负责接收连接,默认是1个线程来执行,将请求的事件注册到事件列表。有Poller来负责轮询,Poller线程数量是cpu的核数Math.min(2,Runtime.getRuntime().availableProcessors())。由Poller将就绪的事件生成SocketProcessor同时交给Excutor去执行。在Excutor的线程中,会完成从socket中读取http request,解析成HttpServletRequest对象,分派到相应的servlet并完成逻辑,然后将response通过socket发回client。一个网上广泛引用的图例如下图:
    这里写图片描述
    假设一共有四个客户端连接到了服务器并请求数据,那么这个线程模型是怎么工作的呢?我们以下图为例,作为对上述抽象出来的模型的解说:
    这里写图片描述
    1、首先主线程通过NIO模式建立服务器绑定,并采用阻塞的模式
    2、然后生成Acceptor线程,这里假设就一个线程,则这个线程将执行while循环监听客户端的连接请求;
    3、启动Poller线程(实际上Poller和Acceptor线程几乎同时启动,因为多线程在未做同步的时候就是默认是异步的,当Acceptor.start执行之后,可以立即执行Poller.start),假设是双核处理器,则我们将生成两个Poller线程;如果连接成功,则立即把已经连接的客户端socket注册到随机Poller中,同时NioChannel对象封装在一个PollerEvent对象中,并将PollerEvent对象压入events queue里。这里是个典型的生产者-消费者模式,Acceptor与Poller线程之间通过queue通信,Acceptor是events queue的生产者,Poller是events queue的消费者。图例展示的是client1、client2被随机注册到Poller1的线程中;client3、client4被随机注册到Poller2线程中;这里所说的注册实际上是注册到Poller对象维护的Events队列中,然后在通过NIO模型中的"注册"注册到select选择器中,这里一个Poller维护一个select并对select注册的NioChannel发起轮询,凡是准备好的Channel则交由Thread_pool线程池;
    4、在线程池中,线程拿到Poller传过来的socket后,将socket封装在SocketProcessor对象中。然后从Http11ConnectionHandler中取出Http11NioProcessor对象,从Http11NioProcessor中调用CoyoteAdapter的逻辑,跟BIO实现一样。在Worker线程中,会完成从socket中读取http request,解析成HttpServletRequest对象,分派到相应的servlet并完成逻辑,然后将response通过socket发回client。

    最近手残,搞了个公众号,主要闲暇时间随便聊一些程序圈的一些事,也会分享一些技术面试的资料,感兴趣的可以关注一波。关注后,后台发送 面试指南,可以获取2021最新JAVA面试总结,基本看完后,JAVA八股文这些应该不在话下了。

    在这里插入图片描述

    展开全文
  • Tomcat 后台启动进程

    千次阅读 2019-09-25 16:03:53
    最近做项目中,因为公用服务器的原因,启动在服务器上面的服务老是被人关闭(tomcat的服务窗口太) 所以想把服务窗口转到后台启动 1:tomcat如何启动服务 基于tomcat的启动脚本(处理过),其实也可以用tomcat...

    最近做项目中,因为公用服务器的原因,启动在服务器上面的服务老是被人关闭(tomcat的服务窗口太多)

    所以想把服务窗口转到后台启动

    1:tomcat如何启动服务

    基于tomcat的启动脚本(处理过),其实也可以用tomcat下的start.bat脚本启动,原理一样,只是我需要添加配置,这样写比较清晰。

    @echo off

    echo start tomcat webapps
    set  "JAVA_HOME=D:\XXX\JDK7"    --设置用到的jdk
    set  "CATALINA_HOME=D:\XXX\apache-tomcat-xxx"  --设置用到的tomcat
    set  "JAVA_OPTS=%JAVA_OPTS% -server  -Xms64m -Xmx256m -XX:PermSize=64m -XX:MaxPermSize=256m  -DXXX.config.dir=D:\XXX\XXX "   //参数设置和设置用到的配置文件
    START "XXX" %CATALINA_HOME%\bin\catalina.bat run -config %CATALINA_HOME%\conf\server.xml  --启动相关命令
    echo please waint untill the application started successfully.

    echo ------ DONE ----------

     

    从上面不难看出启动的是catalina.bat

    这个链接说的也很详细:https://www.jianshu.com/p/b2f63ffa964c,具体细节看这篇文章即可,不在赘述。

    2:如何后台启动tomcat服务

    在上面脚本中set  "CATALINA_HOME=D:\XXX\apache-tomcat-xxx" 指定的tomcat文件下找到

    D:\XXX\apache-tomcat-xxx"\bin\setclasspath.bat   右键编辑这个文件,直接拖动到文件最下面

    找到set _RUNJAVA="%JRE_HOME%\bin\java",将其改成

    set _RUNJAVA="%JRE_HOME%\bin\javaw"  

    再启动最上面的脚本(或者tomcat下面的start.bat脚本)

    这样就已经是后台启动tomcat服务了

    3:修改tomcat启动服务的进程名称

    按照步骤2中的改动后,想要关闭启动的tomcat服务,发现在进程中都是javaw.exe名称,如果服务器中启动了多个此类javaw.exe进程,但是却根本不知道关闭哪一个,修改进程名称操作如下

    打 开上面路径中的setclasspath.bat文件,找到set _RUNJAVA="%JRE_HOME%\bin\java"这一行。将该行注释掉(即改为 rem set _RUNJAVA="%JRE_HOME%\bin\java"),然后在该行下面添加如下两行并进行保存:

       copy "%JAVA_HOME%\bin\javaw.exe" "%JAVA_HOME%\bin\xxx.exe"  --这里还是用javaw,不然不是后台启动服务

       set _RUNJAVA="%JAVA_HOME%\bin\xxx"

     注意:omp为你所想看到的进程名字(即在任务管理器中的映像名称)

     重启tomcat后在在任务管理器中看见的进程名就不再是javaw.exe,而是xxx.exe了。

    4:依据后台名称关闭服务进程

    步骤3后,我们终于可以区分各个服务,就是每次关闭服务需要去任务管理器中,找到xxx.exe并关闭进程,有点麻烦是不是,其实我们可以写个关闭指定进程名称的脚本,具体如下:

    @echo off

    echo stop xxx.exe
    call taskkill /f /im xxx.exe  --一定加上/f 强制终止进程
    pause

    至此就结束了

    如果对上面的步骤有任何疑问或者更好的方法,欢迎回复交流,谢谢!

     

     

     

     

     

    展开全文
  • 在windows上安装了tomcat,机器特别卡,在任务管理器中观察到其中有一个java进程cpu使用率高的99%,导致cpu使用率100%,但是由于有个java进程,所以没法有效的区别出哪个有问题,因此才有了给他们其别名的想法
  • tomcat

    千次阅读 2019-08-30 13:47:17
    tomcat 文章目录tomcat1. tomcat简介2. tomcat项目部署2.1 java环境安装2.2 tomcat部署2.3 开启管理模块 1. tomcat简介 Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,...

    tomcat

    1. tomcat简介

    Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。
    Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
    诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为9.0。

    tomcat就是传说中的中间件之一,tomcat本身是一个容器,专门用来运行java程序,java语言开发的网页.jsp就应该运行于tomcat中。而tomcat本身的运行也依赖于jdk环境。

    2. tomcat项目部署

    2.1 java环境安装

    安装jdk环境
    [root@swk ~]# yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel
    .....安装过程略
    
    查看安装的版本
    [root@swk ~]# java -version
    openjdk version "1.8.0_131"
    OpenJDK Runtime Environment (build 1.8.0_131-b12)
    OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)
    

    2.2 tomcat部署

    下载tomcat
    [root@swk ~]# cd /usr/src/
    [root@swk src]# wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-9/v9.0.24/bin/apache-tomcat-9.0.24.tar.gz
    
    解压部署
    [root@swk src]# ls
    apache-tomcat-9.0.24.tar.gz  debug  kernels
    [root@swk src]# tar xf apache-tomcat-9.0.24.tar.gz -C /usr/local/
    [root@swk src]# cd /usr/local/
    [root@swk local]# ln -s apache-tomcat-9.0.24/ tomcat
    [root@swk local]# ll
    总用量 0
    drwxr-xr-x. 2 root root  6 3月  10 2016 bin
    drwxr-xr-x. 2 root root  6 3月  10 2016 etc
    drwxr-xr-x. 2 root root  6 3月  10 2016 games
    drwxr-xr-x. 2 root root  6 3月  10 2016 include
    drwxr-xr-x. 2 root root  6 3月  10 2016 lib
    drwxr-xr-x. 2 root root  6 3月  10 2016 lib64
    drwxr-xr-x. 2 root root  6 3月  10 2016 libexec
    drwxr-xr-x. 2 root root  6 3月  10 2016 sbin
    drwxr-xr-x. 5 root root 49 8月  28 05:55 share
    drwxr-xr-x. 2 root root  6 3月  10 2016 src
    lrwxrwxrwx. 1 root root 21 8月  30 02:48 tomcat -> apache-tomcat-9.0.24/
    
    写一个hello world的java页面
    [root@swk ~]# vim index.jsp
    [root@swk ~]# cat index.jsp 
    <html>
    <head>
            <title>test page</title>
    </head>
    <body>
            <%
                out.println("Hellow World");
            %>
    </body>
    </html>
    
    [root@swk ~]# mkdir /usr/local/tomcat/webapps/test
    [root@swk ~]# cp index.jsp /usr/local/tomcat/webapps/test/
    [root@swk ~]# ll /usr/local/tomcat/webapps/test/
    总用量 4
    -rw-r--r--. 1 root root 141 8月  30 02:58 index.jsp
    
    启动tomcat
    [root@swk ~]# /usr/local/tomcat/bin/catalina.sh start
    Using CATALINA_BASE:   /usr/local/tomcat
    Using CATALINA_HOME:   /usr/local/tomcat
    Using CATALINA_TMPDIR: /usr/local/tomcat/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
    Tomcat started.
    
    [root@swk ~]# ps -ef|grep tomcat
    root      12970      1 10 02:58 pts/1    00:00:01 /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
    root      13017  12770  0 02:59 pts/1    00:00:00 grep --color=auto tomcat
    [root@swk ~]# ss -antl
    State      Recv-Q Send-Q Local Address:Port               Peer Address:Port              
    LISTEN     0      128              *:22                           *:*                  
    LISTEN     0      100      127.0.0.1:25                           *:*                  
    LISTEN     0      100             :::8080                        :::*                  
    LISTEN     0      128             :::22                          :::*                  
    LISTEN     0      100            ::1:25                          :::*                  
    LISTEN     0      1         ::ffff:127.0.0.1:8005                        :::*                  
    LISTEN     0      100             :::8009                        :::*  
    

    在浏览器上浏览网页

    在这里插入图片描述

    2.3 开启管理模块

    在这里插入图片描述

    在这里插入图片描述

    • 修改配置文件/usr/local/tomcat/conf/tomcat-users.xml
    [root@swk ~]# vim /usr/local/tomcat/conf/tomcat-users.xml
    ......
      <role rolename="manager-gui"/>
      <role rolename="admin-gui"/>
      <user username="tomcat" password="123456" roles="manager-gui,admin-gui"/>
    </tomcat-users>		## 在此行前面添加以上内容
    
    注意:admin-gui是管理Host Manager项的,manager-gui是管理Server status和Manager App项
    
    • 修改配置文件/usr/local/tomcat/webapps/manager/META-INF/context.xml
    <Context antiResourceLocking="false" privileged="true" >
      <Valve className="org.apache.catalina.valves.RemoteAddrValve"
             allow="192\.168\.30\.1|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />     ##此处要允许宿主机的ip访问
      <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
    </Context>
    
    • 重启tomcat
    [root@swk ~]# /usr/local/tomcat/bin/catalina.sh stop
    Using CATALINA_BASE:   /usr/local/tomcat
    Using CATALINA_HOME:   /usr/local/tomcat
    Using CATALINA_TMPDIR: /usr/local/tomcat/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
    
    [root@swk ~]# /usr/local/tomcat/bin/catalina.sh start
    Using CATALINA_BASE:   /usr/local/tomcat
    Using CATALINA_HOME:   /usr/local/tomcat
    Using CATALINA_TMPDIR: /usr/local/tomcat/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
    Tomcat started.
    

    现在已经可以进入Server status和Manager App了,点击对应的按钮,输入密码即可进入,页面如下:
    在这里插入图片描述
    在这里插入图片描述
    但是现在还不能进入Host Manager

    • 修改配置文件/usr/local/tomcat/webapps/host-manager/META-INF/context.xml
    <Context antiResourceLocking="false" privileged="true" >
      <Valve className="org.apache.catalina.valves.RemoteAddrValve"
             allow="192\.168\.30\.1|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />	      ##同样加上允许宿主机ip访问
      <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
    </Context>
    
    • 重启tomcat
    [root@swk ~]# /usr/local/tomcat/bin/catalina.sh stop
    Using CATALINA_BASE:   /usr/local/tomcat
    Using CATALINA_HOME:   /usr/local/tomcat
    Using CATALINA_TMPDIR: /usr/local/tomcat/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
    
    [root@swk ~]# /usr/local/tomcat/bin/catalina.sh start
    Using CATALINA_BASE:   /usr/local/tomcat
    Using CATALINA_HOME:   /usr/local/tomcat
    Using CATALINA_TMPDIR: /usr/local/tomcat/temp
    Using JRE_HOME:        /usr
    Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
    Tomcat started.
    

    点击Host Manager的按钮,输入密码即可进入,页面如下:
    在这里插入图片描述

    展开全文
  • Tomcat 守护进程脚本

    千次阅读 2019-01-05 23:08:29
    #Tomcat 管理 守护进程脚本 ...如果启动tomcat服务,需要修改 8008080 8009端口, 复制一次tomcat目录 Tomcat守护进程脚本 !/bin/bash usage(){ echo "USAGE: start | stop | status" } define PID tomcat...
  • tomcat绿色版,做出安装服务,如果一台机器安装了tomcat进程名字都一样,因此需要区分
  • windows环境下nssm配置tomcat守护进程

    千次阅读 2018-12-06 18:21:23
    导致服务不稳定,为此,急需寻找一种类似linux环境下的守护进程。 网上的资料很,本人经过实战,总结出一种相对简单方法。 准备软件如下: 1、tomcat安装版:...
  • 线程(一):tomcat 线程

    千次阅读 2014-03-25 17:23:05
    1.编辑tomcat安装目录下的conf目录下的server.xml文件 在tomcat配置文件server.xml中的配置中,和连接数相关的参数有: maxThreads="150" 表示最多同时处理150个连接,Tomcat使用线程来处理接收的...
  • 1.Linux中出现多个一样的进程 如下则是出现了多个进程一样的: root用户进行启动tomcat多次,我登录的是普通用户,致使tomcat停止无效。
  • 问题链接https://www.oschina.net/question/2402835_2308799 找到的解决方式 1、在tomcat/bin/shutdown.sh文件中增加一个参数 在文件最后一行的命令添加一个force exec "$PRGDIR"/"$EXECUTABL...
  • tomcat运行一段时间后会出现很残留进程, 通过ps -ef| grep tomcat可以查看到 , 如下图 这些进程非常的占用内容, 所以需要清理掉。 清理命令 kill -9 $(ps -ef | grep apache-tomcat-8.5.57 | awk {'print ...
  • 启动tomcat以后,产生个java进程,整体占用内存有点高,这是咋回事呀?怎么解决?![图片说明](https://img-ask.csdn.net/upload/201711/22/1511320454_74351.png)
  • supervisor管理tomcat进程

    千次阅读 2018-03-20 20:23:13
    希望不要在,走在路上的时候,突然接到电话,项目挂了,马上跑到路边,打开背包,联手机网,重启tomcat,贼尴尬的事情,所以就先使用supervisor保证tomcat进程不要挂,具体怎么研究的,慢慢的来Supervisor...
  • 杀死所有的tomcat进程

    千次阅读 2019-05-12 12:52:46
    杀死所有的tomcat进程 大佛拈花大佛拈花今天 我们在平时使用tomcat的过程中需要杀死某个或者某几个tomcat进程,一般都使用的命令是 ps -ef|grep tomcat来获取对应的进程号,然后使用kill -9 pid来杀死。我在这里...
  • tomcat进程

    2016-06-29 11:57:25
    一般是执行tomcat/bin/startup.sh,sh tomcat/bin/startup.sh 停止 一般是执行 sh tomcat/bin/shutdown.sh脚本命令 查看 执行ps -ef |grep tomcat 输出如下 sun 5144 1 0 10:21 pts/1 00:00:06 /java/jdk/bin/java -...
  •   今天对需求进行系统升级部署,本以为只需要几分钟的事,结果却...  产生这个原因是有tomcat进程,我们可以通过Linux命令查看tomcat进程 查找出tomcat进程: ps -ef |grep tomcat 杀掉tomcat进程 :...
  • tomcat 重启进程

    2013-07-11 11:08:00
    发现并没有8080端口的Tomcat进程。 使用命令:netstat –apn 查看所有的进程和端口使用情况。发现下面的进程列表,其中最后一栏是PID/Program name 发现8080端口被PID为9658的Java进程占用。 进一步...
  • 当同一个服务器上启动tomcat后,我们会在任务管理器中看见个java.exe,当我们需要对某个tomcat进行监控时,却无法区分出该tomcat进程,那么如何修改进程名呢? 打开tomcat_home\bin\setclasspath.bat文件,...
  • windows下强制杀死tomcat进程

    千次阅读 2018-07-09 15:46:10
    原文链接: ... 在Windows操作系统中,我们在启动一个tomcat服务器时,经常会发现8080端口已经被占用...本文将通过命令来强行终止这个已经运行的tomcat进程,如下: 1、首先查找到占用8080端口的进程号PID是多少 CM...
  • tomcat停止了,只是停止了容器,可能还有java线程没停止,导致tomcat进程还在 拿到tomcat进程pid ps -ef|grep tomcat 得到pid31057 查看java进程,到底后台还在执行什么 jstack -F 31057 >> run.log ...
  • tomcat在windows下可以直接关闭,但是貌似在Linux下有时候shutdown.sh 没有关闭tomcat进程; 现象: 在Linux下shutdown.sh ,然后查看tomcat进程发现没有完全关闭; #查看tomcat进程是否关闭语句 ps -...
  • 最近生产环境一台tomcat隔一段时间cpu会达到900%,导致服务响应缓慢。 首先确定排查思路 1.先找到占用cpu高的进程id ps -ef | grep PID 2.打印出该进程下的线程占用cpu情况 ps -mp pid -o THREAD,tid,time 找到...
  • 服务器上tomcat进程突然终止问题排查 1)检查是否shell进程终止导致tomcat终止(排除) 由于使用./catalina.sh start启动tomcat,启动后tomcat的父PID为1,因此不会由于shell断开而终止 2)tomcat进程是否被kill...
  • tomcat运行一会 进程僵死 分析

    千次阅读 2017-04-29 10:03:44
     公司项目运行一会,访问页面一直在加载中,ps -ef|grep java 查看进程还在,  去查看日志文件,还没见什么异常,日志文件也停住了。  郁闷了好久,运行一会,项目就熄火了,本宝宝,解决办法就是SB一样的重启...
  • ps 为我们提供了进程的一次性的查看,它所提供的查看结果并不动态连续的;如果想对进程时间监控,应该用 top 工具。 top 的使用,可参考:http://blog.csdn.net/fly910905/article/details/77981309中的top...
  • Tomcat 进程自动退出问题

    万次阅读 2016-12-28 10:14:23
    后来遇到一个比较怪异的问题:应用跑一段时间,Tomcat进程就挂掉了。而且这个没有什么规律,不是在特定操作执行时,或者特定时间出现。同时没有任何的日志。本来以为是其它的服务的人把我们的不小心kill掉了,但kill...
  • 查看tomcat进程启动了多少个线程

    千次阅读 2019-10-08 10:55:40
    1、 获取tomcat进程pid ps -ef|grep tomcat 例如进程号是29295 2、 统计该tomcat进程内的线程个数 ps -Lf 29295|wc -l
  • 1. 定义Tomcat 使用的 JDK 版本 在setclasspath.sh(bin目录下)文件的最前面增加如下配置: JAVA_HOME="/usr/local/java/jdk1.8.0_181" JRE_HOME="/usr/local/java/jdk1.8.0_181/jre...2. 解决tomcat多进程问题 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 88,678
精华内容 35,471
关键字:

tomcat多进程