Linux下Tomcat的几种运行方式讲解

 更新时间:2019年04月01日 16:10:34   作者:yhyhyhyyhyhyhh  
今天小编就为大家分享一篇关于Linux下Tomcat的几种运行方式讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

Linux下Tomcat的启动、关闭

在Linux系统下,启动和关闭Tomcat使用命令操作。

进入Tomcat下的bin目录

cd /java/tomcat/bin

启动Tomcat命令

./startup.sh

停止Tomcat服务命令

./shutdown.sh

执行tomcat ./shutdown.sh 后,虽然tomcat服务不能正常访问了,但是ps -ef | grep tomcat 后,发现tomcat对应的java进程未随web容器关闭而销毁,进而存在僵尸java进程。网上看了下导致僵尸进程的原因可能是有非守护线程(即User Thread)存在,jvm不会退出(当JVM中所有的线程都是守护线程的时候,JVM就可以退出了;如果还有一个或以上的非守护线程则JVM不会退出)。通过一下命令查看Tomcat进程是否结束:

ps -ef|grep tomcat

若显示一下相似信息,说明Tomcat进程未结束

gateway  14705 14703 12 08:29 pts/0    00:03:10 /www/websoft/java/java1/jdk1.7.0_25/jre/bin/java -Djava.util.logging.config.file=/www/websoft/tomcat1/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -server -Xms1536m -Xmx1536m -Xss256k -XX:MaxPermSize=512m -XX:+UseParallelGC -XX:ParallelGCThreads=20 -XX:+UseParallelOldGC -XX:MaxGCPauseMillis=100 -XX:+UseAdaptiveSizePolicy -Djava.endorsed.dirs=/endorsed -classpath /www/websoft/tomcat1/bin/bootstrap.jar:/www/websoft/tomcat1/bin/tomcat-juli.jar -Dcatalina.base=/www/websoft/tomcat1 -Dcatalina.home=/www/websoft/tomcat1 -Djava.io.tmpdir=/www/websoft/tomcat1/temp org.apache.catalina.startup.Bootstrap start

此时我们可强制结束该进程(僵尸进程)

kill -9 14705

上一命令执行完毕后,重新查看Tomcat进程情况,Tomcat已完全停止。

Linux上Tomcat的几种运行方式

Linux下tomcat服务的启动、关闭与错误跟踪,使用PuTTy远程连接到服务器以后,通常通过以下几种方式启动关闭tomcat服务:

启动tomcat服务

方式一:

直接启动 ./startup.sh

方式二:

作为服务启动 nohup ./startup.sh &

方式三:

控制台动态输出方式启动 ./catalina.sh run 动态地显示tomcat后台的控制台输出信息,Ctrl+C后退出并关闭服务

解释:

通过方式一、方式三启动的tomcat有个弊端,当客户端连接断开的时候,tomcat服务也会立即停止;通过方式二可以作为linux服务一直运行。

通过方式一、方式二方式启动的tomcat,其日志会写到相应的日志文件中,而不能动态地查看tomcat控制台的输出信息与错误情况;

通过方式三可以以控制台模式启动tomcat服务,直接看到程序运行时后台的控制台输出信息,不必每次都要很麻烦的打开catalina.out日志文件进行查看,这样便于跟踪查阅后台输出信息。tomcat控制台信息包括log4jSystem.out.println()等输出的信息。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

  • 学习Vim合并行的方法和技巧

    学习Vim合并行的方法和技巧

    这篇文章主要介绍了学习Vim合并行的方法以及代码实现过程,值得参考,一起来学习下。
    2017-11-11
  • Linux环境使用g++编译C++方法总结

    Linux环境使用g++编译C++方法总结

    本篇文章给大家分享了在Linux环境中用g++编译C++的方法以及相关实例代码分享,有兴趣的朋友学习下。
    2018-03-03
  • Linux中关于sed命令的6个高级用法

    Linux中关于sed命令的6个高级用法

    这篇文章主要介绍了Linux中关于sed命令的6个高级用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • Linux系统中检查系统重启记录方案

    Linux系统中检查系统重启记录方案

    通过Linux系统的日志文件和特定命令,系统管理员可以有效监控和分析系统的重启历史,以便及时发现并解决潜在的系统问题和安全漏洞,保证系统稳定高效运行,利用/var/log目录和命令如last、uptime和journalctl
    2024-10-10
  • Linux的Socket IO模型趣解

    Linux的Socket IO模型趣解

    这篇文章主要通过一个幽默的方式为大家详细介绍了Linux的Socket IO模型,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • 解决访问不到Linux服务器中RabbitMQ管理页面问题

    解决访问不到Linux服务器中RabbitMQ管理页面问题

    大家好,本篇文章主要讲的是解决访问不到Linux服务器中RabbitMQ管理页面问题,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • linux系统下如何新增vg大小

    linux系统下如何新增vg大小

    文章介绍了在Linux系统下新增和扩容卷组(VG)的操作步骤,包括添加数据盘、创建物理卷(PV)、将PV添加到VG、创建逻辑卷(LV)、赋予文件系统以及挂载LV
    2024-12-12
  • Linux账号文件控制管理步骤详解

    Linux账号文件控制管理步骤详解

    在本篇文章里小编给大家整理了关于Linux账号文件控制管理的步骤和实例,需要的朋友们可以参考下。
    2019-08-08
  • Linux服务器中对于Memcache的安装配置方法

    Linux服务器中对于Memcache的安装配置方法

    Linux服务器中对于Memcache的安装配置教程,服务器端主要是安装memcache服务器端,目前的最新版本是 memcached-1.3.0
    2011-05-05
  • 详解ubuntu安装opencv的正确方法

    详解ubuntu安装opencv的正确方法

    这篇文章主要介绍了ubuntu安装opencv的正确方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08

最新评论