java守护进程启动和关闭脚本
来源:互联网 发布:java wait notify实现 编辑:程序博客网 时间:2024/06/04 19:50
# 程序名称PROJECT_NAME=route#程序路径APP_HOME=$(dirname $(pwd))/$PROJECT_NAME#java库目录JAVA_LIB_PATH=$APP_HOME/resource/daemon/lib#JAVA_HOMEJAVA_HOME=/home/software/jdk1.8#依赖路径,route.jar中使用mf文件指定依赖jar包,否则就需要指定所有jar包CLASS_PATH=$APP_HOME/resource/daemon/route.jar#CLASS_PATH=$CLASS_PATH:$JAVA_LIB_PATH/netty-all-4.1.17.Final.jar#CLASS_PATH=$CLASS_PATH:$JAVA_LIB_PATH/disruptor-3.2.1.jar#CLASS_PATH=$CLASS_PATH:$JAVA_LIB_PATH/log4j-api-2.0.2.jar#CLASS_PATH=$CLASS_PATH:$JAVA_LIB_PATH/log4j-core-2.0.2.jar#参数JAVA_OPTS=-Xms512m -Xmx512m -Xnoclassgc -Xverify:none#程序入口类MAIN_CLASS=com.dice.game.StartupWrapper#程序ID文件PID_FILE=${APP_HOME}/${PROJECT_NAME}.pid#日志输出路径LOG_FILE=${APP_HOME}/logs/${PROJECT_NAME}.out#判断文件是否存在,如果不存在则创建if [ ! -f "$PID_FILE" ]; then touch "$PID_FILE" echo 0 > $PID_FILEfiif [ ! -f "$LOG_FILE" ]; then touch "$LOG_FILE"fi #输出echo "service name: $PROJECT_NAME"echo "app home: $APP_HOME"echo "java home: $JAVA_HOME"echo "class path: $CLASS_PATH"echo "main class: $MAIN_CLASS"echo "pid file : $PID_FILE"pid=0#获得pidgetpid() { pid=`cat $PID_FILE`}#启动项目start() { getpid if [ $pid -ne 0 ]; then echo "================================" echo "warn: already started! or bad close last time!" echo "================================" fi echo -n "Starting..." nohup $JAVA_HOME/bin/java -server $JAVA_OPTS -classpath $CLASS_PATH $MAIN_CLASS >> $LOG_FILE 2>&1 & echo $! > $PID_FILE getpid if [ $pid -ne 0 ]; then echo "=================================" echo "[Start Success] (pid=$pid)" echo "================================" else echo "=================================" echo "[Start Failed]" echo "=================================" fi}#关闭项目#使用 kill -15 pid 方式来关闭进程,使得程序可以执行shutdownhook释放资源stop() { getpid if [ $pid -ne 0 ]; then skill -15 $pid echo "================================" echo "stoping" echo "================================" fi}##脚本入口case "$1" in 'start') start ;; 'stop') stop ;; *) echo "Usage: $0 {start|stop}" exit 1esacexit 0
阅读全文
0 0
- java守护进程启动和关闭脚本
- 启动守护进程和超级守护进程
- 使用crontab启动脚本守护tomcat进程
- Linux封装启动和关闭tomcat进程脚本
- ubuntu 12.04中openssh守护进程sshd关闭和启动的方法
- 守护进程(简单实现)--程序关闭后自动启动
- 开机自启动和多进程守护
- Oracle 启动和关闭脚本
- Java中的守护进程和非守护进程
- Linux下启动C/C++守护进程的bash脚本
- 守护进程脚本
- 守护进程监测脚本
- [工具]进程守护脚本
- Codis进程守护脚本
- linux守护进程脚本
- hadoop脚本分析和单节点启动和关闭hadoop进程
- 启动停止守护进程
- MFC启动进程和关闭进程
- android项目开发遇到的问题以及处理结果
- c程小白<一>
- Html浏览器的兼容性
- JavaScript基础(15.Dom创建标签)
- 《你不知道的JavaScript(上)》——1.1编译原理
- java守护进程启动和关闭脚本
- 当程序员没了互联网,该如何继续学习写代码?
- IDEA Push Failed with error: fatal: Could not read from remote repository
- Python checkio "IP Network: Route Summarization"解决方案
- 数据结构课程总结
- 上传配置
- MAVEN的依赖
- 国学名句
- wzq.HorizontalScrollView——横向滑动菜单