当前位置: 首页 > 工具软件 > iphone tomcat > 使用案例 >

linux 程序定时重启tomcat,linux下实现tomcat定时自动重启

阎智
2023-12-01

tomcat自带的脚本中没有提供直接restart的模式,但是有start和shutdown两种模式。要实现restart模式,实际上只需要判断是否已经启动tomcat,若已经启动则限制性shutdown,然后在执行start。或者通过ps aux查询出是否存在tomcat进程,若存在kill -9 tomcat的pid,再进行启动tomcat.通过shell脚本实现tomcat重启,并将该脚本添加到linux的定时任务计划中,就可以实现tomcat的定时自启动功能。

以下是实现tomcat重启的shell脚本

#!/bin/sh

#初始化全局环境变量

. /etc/profile

#查找tomcat的pid

pid=`ps aux | grep tomcat | grep -v grep | grep -v Restart | grep -v restart | awk '{print $2}'`

echo "the tomcat pid is $pid"

#判断tomcat进程是否存在

if [ -n "$pid" ];then

sleep 1

pid=`ps aux | grep tomcat | grep -v grep | grep -v restart | grep -v Restart | awk '{print $2}'`

if [ -n "$pid" ]; then

sleep 1

echo "tomcat进程将被杀死."

kill -9 $pid

fi

sleep 1

echo "tomcat进程已经被杀死,先重新启动tomcat."

service tomcat start

else

echo "tomcat进程不存在,先重新启动tomcat."

service tomcat start

fi

由于我原来对tomcat已经做了服务自启动,因此可以直接执行service tomcat start 启动tomcat。

实现tomcat定时任务

vi /etc/crontab

可以看到以下内容

SHELL=/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin

MAILTO=root

HOME=/

# For details see man 4 crontabs

# Example of job definition:

# .---------------- minute (0 - 59)

# | .------------- hour (0 - 23)

# | | .---------- day of month (1 - 31)

# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...

# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat

# | | | | |

# * * * * * user-name command to be executed

以上备注说明非常清楚,不再加以详细说明,将tomcat重启执行脚本语句添加到最后一行。

#设定每天凌晨3点整重启tomcat

0 3 * * * root sh /home/scripts/tomcat/restart >> /home/logs/tomcat/restart.log

特别注意,在写完脚本后要enter,否则crond服务无法识别,定时任务无法生效

保存并重启crontab服务

service crond restart

以上便完成了tomcat的定时重启功能

如何设置tomcat定时自动重启

,今天笔者就跟大家分享一下如何设置tomcat定时自动重启. 第一:把Tomcat6安装成windows 2003服务. 1.首先检查tomcat\bin目录下是否有service.bat文件,如图: ...

linux下通过脚本实现自动重启程序的方法

无论什么程序都不可能完美无缺,理论上,任何程序都有 Core Dump 的一天,正式运营的程序,尤其是服务器程序,一旦 Core Dump ,后果不堪设想,有过服务器开发经验的朋友,一定都经历过深夜美 ...

linux下写tomcat启动,重启的脚本

启动: #bash/bin cd /finance/ LANG="en_US.UTF-8" export LANG /finance/tomcat8-finance/bin/cat ...

windows下apache及mysql定时自动重启设置

有时候觉得,服务器运行时间过长,造成服务器内存等压力过大.因此,不用重新启动服务器的情况下,完成apache和mysql的内存释放,是非常有益处的(把重启时间设置在访问量最低的).首先,apache的 ...

JFinal中文件上传后会默认放置到WebContent的upload包下,但是tomcat会自动重启,当我们再次打开upload文件夹查看我们刚刚上传的文件时,发现上传的文件已经没有了。

JFinal中文件上传后会默认放置到WebContent的upload包下,但是tomcat会自动重启,当我们再次打开upload文件夹查看我们刚刚上传的文件时,发现上传的文件已经没有了.因为tomc ...

Linux下配置Tomcat服务器

Linux下配置Tomcat服务器和Windows下其实差不多,可以去官网下载安装包释放或者在线下载,只是当时下载的windows.zip文件,现在下载.tar.gz格式的即可,下面使用命令行的方式安 ...

Linux下Jenkins与GitHub自动构建NetCore与部署

今天我们来谈谈NetCore在Linux底下的持续集成与部署.NetCore我就不多介绍了,持续集成用的是Jenkins,源代码管理器用的是GitHub.我们就跟着博文往下走吧. 1.Linux环境 ...

转】Linux下安装Tomcat服务器和部署Web应用

原博文出自于: http://www.cnblogs.com/xdp-gacl/p/4097608.html 感谢! 一.上传Tomcat服务器

随机推荐

MySQL的数据模型

MySQL的数据类型主要分为三大类: 数值型(Numeric Type) 日期与时间型(Date and Time Type) 字符串类型(String Type) 1. 数值 MySQL的数值类型按 ...

Sed、Awk单行脚本快速参考

文本间隔: # 在每一行后面增加一空行 sed G awk '{printf("%s\n\n",$0)}' # 将原来的所有空行删除并在每一行后面增加一空行. # 这样在输出的文本 ...

maven下读取资源文件的问题(转)

原文链接:http://shenchao.me/2016/04/20/maven%E4%B8%8B%E8%AF%BB%E5%8F%96%E8%B5%84%E6%BA%90%E6%96%87%E4%BB ...

[转] 基于PHP Stream Wrapper开发有趣应用场景

PHP Stream Wrapper 原文:http://blog.sina.com.cn/s/blog_502c8cc40100k40e.html ,主要是基于SAE环境讲述相应的应用场景,本文经过 ...

SPOJ #453. Sums in a Triangle (tutorial)

It is a small fun problem to solve. Since only a max sum is required (no need to print path), we can ...

关于java.lang.IllegalStateException

今天调试程序时遇到了java.lang.IllegalStateException org.apache.catalina.connector.ResponseFacade.sendRedirect( ...

ASP.NET MVC5 高级编程 第3章 视图

参考资料第5版 第3章 视图 3.1 视图的作用 视图的职责是向用户提供界面. 不像基于文件的框架,ASP.NET Web Forms 和PHP ,视 ...

app上传 需要的icon

如果提交的ipa包中,未包含必要的Icon就会收到类似的通知,为什么偏偏是Icon-76呢? 因为我们开发的游戏,默认是支持iphone以及ipad的,根据官方提供的参考 Icon-76.png是必须 ...

python学习之成员信息增删改查

主要实现了成员信息的增加,修改,查询,和删除功能,写着玩玩,在写的过程中,遇到的问题,旧新成员信息数据的合并,手机号和邮箱的验证,#!/usr/bin/env python# coding=utf8# ...

直读Innodb datafile

这两天有空翻了翻大神写的,手痒亲身实践.由于此书出版了有段时日,没有用其推荐的python工具,通过点滴推敲,略微发现其中冰山一角的奥秘.对于今后对于一些问题查证或 ...

 类似资料: