Linux下Java服务启动脚本

本文介绍了一个用于管理交易服务器的Shell脚本,该脚本能够启动、停止和重新加载服务。通过检查端口占用情况及进程状态来确保服务运行正常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#!/bin/bash

#检测端口是否占用

function testport() {
if netstat -an | egrep ":$1 .*LISTEN" > /dev/null
then
return 0
else
return 1
fi
}

#检测进程是否已经启动

function testrun() {
if test -f $1
then
pid=`cat $1`
if ps ax 2>/dev/null | egrep "^ *$pid.*$2" > /dev/null
then
return 0
else
rm $1
return 1
fi
else
return 1
fi
}

JAVA_HOME=/usr/java/jdk1.6.0_21
CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
TTCARD_HOME=/opt/ttcard
CLASSPATH=$CLASSPATH:$TTCARD_HOME/lib/c3p0-0.9.1.2.jar:$TTCARD_HOME/lib/jtds-1.2.5.jar:$TTCARD_HOME/lib/log4j-1.2.16.jar:$TTCARD_HOME/bin

export JAVA_HOME CLASSPATH PATH

case $1 in
"start")
if testrun /opt/ttcard/server.pid java
then
echo "Transaction Server is already running!"
else
if testport 10002
then
echo "Another Transaction Server is already running!"
else
echo "Starting Transaction Server..."
#java -Xms512m -Xmx1024M com.ttcard.TransactionServer
nohup java -Xms512m -Xmx1024M com.ttcard.TransactionServer > /dev/null 2>&1 &
echo $! > /opt/ttcard/server.pid
fi

fi
;;

"stop")
if test -f /opt/ttcard/server.pid
then
kill `cat /opt/ttcard/server.pid` > /dev/null 2>&1
echo "Stopping Transaction Server..."
sleep 5
test -f /opt/ttcard/server.pid && rm -f /opt/ttcard/server.pid
else
echo "Transaction Server is not running."
fi
;;

"reload")
if test -f /opt/ttcard/server.pid
then
kill -HUP `cat /opt/ttcard/server.pid` > /dev/null 2>&1
echo "Reload Transaction Server..."
else
echo "Transaction Server is not running."
fi
;;

*)
echo "Transaction Server Usage: "
echo ""
echo " start Start Transaction Server"
echo " stop Stop Transaction Server"
echo " reload Reload Transaction Server"
;;
esac

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值