分享一例脚本发版和tomcat重启脚本

2024-01-28 10:32

本文主要是介绍分享一例脚本发版和tomcat重启脚本,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

线上有个网站业务部署在tomcat上,由于频繁上线修改,需要经常启动tomcat。
tomcat服务自带的bin下没有重启脚本,下面分享一例脚本发版和tomcat重启脚本:

1)现将业务代码从svn里下载到本地,首次下载后,后续就使用svn update更新代码即可。
     发版脚本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@redmine ~] # cd /Data/webroot_svncode/xqsj_app/banshanbandao/bsbd_war/
[root@redmine bsbd_war] # ls
ROOT.war
[root@redmine xqsj_app] # cat up_pub_online_banshanbandao.sh
#!/bin/bash
REMOTE_SERVER_IP= "192.168.1.106 192.168.1.220"
DEST_DIR= "/Data/app/tomcat-7-banshanbandao/webapps/"
cd /Data/webroot_svncode/xqsj_app/banshanbandao/bsbd_war/
/usr/bin/svn update
for SERVER in ${REMOTE_SERVER_IP}; do
/usr/bin/ssh -p22 ${SERVER} "rm -rf /Data/app/tomcat-7-banshanbandao/webapps/*" ;
/usr/bin/rsync -av -e "/usr/bin/ssh -p22" -- rsync -path= "/usr/bin/rsync" --progress /Data/webroot_svncode/xqsj_app/banshanbandao/bsbd_war/ROOT .war ${SERVER}:${DEST_DIR};
sleep 15
/usr/bin/ssh -p22 ${SERVER} "/bin/sh /Data/app/tomcat-7-banshanbandao/start.sh" ;
done  

2)目标机器192.168.1.106

1
2
3
[root@web1 ~] # cd /Data/app/tomcat-7-banshanbandao/webapps/
[root@web1 webapps] # ls
ROOT  ROOT.war

tomcat重启脚本(脚本中将dbconfig.properties配置文件事先准备好,以后每次上线后,配置文件保持不变!因为svn里上线代码中的配置都是开发基于本机的配置

1
2
3
4
5
6
7
8
9
10
11
12
[root@web1 webapps] # cat /Data/app/tomcat-7-banshanbandao/start.sh
#!/bin/bash
cd /Data/app/tomcat-7-banshanbandao/
kill -9 ` ps -ef| grep java| grep - v grep | grep banshanbandao | awk -F " " '{print $2}' `
rm -rf temp/*
rm -rf work/*
\ cp -rf dbconfig.properties webapps /ROOT/WEB-INF/classes/
export JAVA_HOME= "/usr/java/jdk1.7.0_79"
/bin/sh bin /startup .sh

---------------------------------------------------------------------------------------
上述脚本中的:
kill -9 `ps -ef|grep java|grep -v grep|grep banshanbandao |awk -F" " '{print $2}'`
可以替换为:
ps -ef|grep java|grep -v grep|grep banshanbandao |awk -F" " '{print $2}'|xargs kill -9
---------------------------------------------------------------------------------------

重启tomcat

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
[root@web1 ~] # ps -ef|grep tomcat
root      5759     1  0 Oct31 ?        00:20:09 /usr/java/jdk1 .7.0_79 /bin/java -Djava.util.logging.config. file = /Data/app/tomcat-7-banshanbandao/conf/logging .properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -server -Xms1024m -Xmx2048m -XX:MaxNewSize=512m -XX:PermSize=2048M -XX:MaxPermSize=2048m -Djava.endorsed. dirs = /Data/app/tomcat-7-banshanbandao/endorsed -classpath /Data/app/tomcat-7-banshanbandao/bin/bootstrap .jar: /Data/app/tomcat-7-banshanbandao/bin/tomcat-juli .jar -Dcatalina.base= /Data/app/tomcat-7-banshanbandao -Dcatalina.home= /Data/app/tomcat-7-banshanbandao -Djava.io.tmpdir= /Data/app/tomcat-7-banshanbandao/temp org.apache.catalina.startup.Bootstrap start
root     19549 16881  0 18:06 pts /0    00:00:00 grep --color=auto tomcat
[root@web1 ~] # ps -ef|grep java|grep -v grep|grep banshanbandao |awk -F" " '{print $2}'
5759
[root@web1 ~] # /bin/sh -x /Data/app/tomcat-7-banshanbandao/start.sh
+ cd /Data/app/tomcat-7-banshanbandao/
++ ps -ef
++ grep java
++ grep - v grep
++ grep banshanbandao
++ awk '-F ' '{print $2}'
+ kill -9 19707
+ rm -rf 'temp/*'
+ rm -rf work /Catalina
+ cp -rf dbconfig.properties webapps /ROOT/WEB-INF/classes/
+ export JAVA_HOME= /usr/java/jdk1 .7.0_79
+ JAVA_HOME= /usr/java/jdk1 .7.0_79
+ /bin/sh bin /startup .sh
Using CATALINA_BASE:   /Data/app/tomcat-7-banshanbandao
Using CATALINA_HOME:   /Data/app/tomcat-7-banshanbandao
Using CATALINA_TMPDIR: /Data/app/tomcat-7-banshanbandao/temp
Using JRE_HOME:        /usr/java/jdk1 .7.0_79
Using CLASSPATH:       /Data/app/tomcat-7-banshanbandao/bin/bootstrap .jar: /Data/app/tomcat-7-banshanbandao/bin/tomcat-juli .jar
Tomcat started.
[root@web1 ~] # ps -ef|grep tomcat
root     19859     1 99 18:07 pts /0    00:00:05 /usr/java/jdk1 .7.0_79 /bin/java -Djava.util.logging.config. file = /Data/app/tomcat-7-banshanbandao/conf/logging .properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -server -Xms1024m -Xmx2048m -XX:MaxNewSize=512m -XX:PermSize=2048M -XX:MaxPermSize=2048m -Djava.endorsed. dirs = /Data/app/tomcat-7-banshanbandao/endorsed -classpath /Data/app/tomcat-7-banshanbandao/bin/bootstrap .jar: /Data/app/tomcat-7-banshanbandao/bin/tomcat-juli .jar -Dcatalina.base= /Data/app/tomcat-7-banshanbandao -Dcatalina.home= /Data/app/tomcat-7-banshanbandao -Djava.io.tmpdir= /Data/app/tomcat-7-banshanbandao/temp org.apache.catalina.startup.Bootstrap start
root     19883 16881  0 18:07 pts /0    00:00:00 grep --color=auto tomcat
***************当你发现自己的才华撑不起野心时,就请安静下来学习吧***************

这篇关于分享一例脚本发版和tomcat重启脚本的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/653366

相关文章

微信公众号脚本-获取热搜自动新建草稿并发布文章

《微信公众号脚本-获取热搜自动新建草稿并发布文章》本来想写一个自动化发布微信公众号的小绿书的脚本,但是微信公众号官网没有小绿书的接口,那就写一个获取热搜微信普通文章的脚本吧,:本文主要介绍微信公众... 目录介绍思路前期准备环境要求获取接口token获取热搜获取热搜数据下载热搜图片给图片加上标题文字上传图片

Tomcat版本与Java版本的关系及说明

《Tomcat版本与Java版本的关系及说明》:本文主要介绍Tomcat版本与Java版本的关系及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat版本与Java版本的关系Tomcat历史版本对应的Java版本Tomcat支持哪些版本的pythonJ

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

如何将Tomcat容器替换为Jetty容器

《如何将Tomcat容器替换为Jetty容器》:本文主要介绍如何将Tomcat容器替换为Jetty容器问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat容器替换为Jetty容器修改Maven依赖配置文件调整(可选)重新构建和运行总结Tomcat容器替

Centos环境下Tomcat虚拟主机配置详细教程

《Centos环境下Tomcat虚拟主机配置详细教程》这篇文章主要讲的是在CentOS系统上,如何一步步配置Tomcat的虚拟主机,内容很简单,从目录准备到配置文件修改,再到重启和测试,手把手带你搞定... 目录1. 准备虚拟主机的目录和内容创建目录添加测试文件2. 修改 Tomcat 的 server.X

Python解析器安装指南分享(Mac/Windows/Linux)

《Python解析器安装指南分享(Mac/Windows/Linux)》:本文主要介绍Python解析器安装指南(Mac/Windows/Linux),具有很好的参考价值,希望对大家有所帮助,如有... 目NMNkN录1js. 安装包下载1.1 python 下载官网2.核心安装方式3. MACOS 系统安

Tomcat的下载安装与使用教程

《Tomcat的下载安装与使用教程》本文介绍了Tomcat的下载、安装和使用方法,包括在本机和云服务器上部署Tomcat的过程,以及解决启动失败问题的方法... 目录Tomcat的下载安装与使用Tomcat的下载与安装Tomcat在本机运行使用Tomcat在php云服务器上的使用总结Tomcat的下载安装与

通过Python脚本批量复制并规范命名视频文件

《通过Python脚本批量复制并规范命名视频文件》本文介绍了如何通过Python脚本批量复制并规范命名视频文件,实现自动补齐数字编号、保留原始文件、智能识别有效文件等功能,听过代码示例介绍的非常详细,... 目录一、问题场景:杂乱的视频文件名二、完整解决方案三、关键技术解析1. 智能路径处理2. 精准文件名

Java嵌套for循环优化方案分享

《Java嵌套for循环优化方案分享》介绍了Java中嵌套for循环的优化方法,包括减少循环次数、合并循环、使用更高效的数据结构、并行处理、预处理和缓存、算法优化、尽量减少对象创建以及本地变量优化,通... 目录Java 嵌套 for 循环优化方案1. 减少循环次数2. 合并循环3. 使用更高效的数据结构4

web网络安全之跨站脚本攻击(XSS)详解

《web网络安全之跨站脚本攻击(XSS)详解》:本文主要介绍web网络安全之跨站脚本攻击(XSS)的相关资料,跨站脚本攻击XSS是一种常见的Web安全漏洞,攻击者通过注入恶意脚本诱使用户执行,可能... 目录前言XSS 的类型1. 存储型 XSS(Stored XSS)示例:危害:2. 反射型 XSS(Re