您的位置:首页 > 运维架构 > Linux

linux对dubbo的维护

2015-12-21 19:18 459 查看
当生成jar包把所有的依赖都往linux上部署完之后,就可以启动dubbo服务了,当然这个前提是java的linux环境要部署好。

dubbo服务的启动很简单,如果只是少量的服务接口的时候,手工就可以进行服务的维护

维护的命令如下:

java -jar xxx.jar &

kill PID

kill -9 PID

但是我们使用dubbo这个框架的时候,一般服务就是很多很多的,如果每个服务都手工去维护的话,这个工作就太繁琐了,所以我们需要自定义的shell进行对服务的维护。直接实现对脚本 start,stop 和restart

下面贴出一个shell实例,以供参考



[html]
view plaincopy

#!/bin/sh

## java env
export J***A_HOME=/usr/local/java/jdk1.7.0_72
export JRE_HOME=$J***A_HOME/jre

## service name
APP_NAME=user

SERVICE_DIR=/home/li/test/service/$APP_NAME
SERVICE_NAME=test-service-$APP_NAME
JAR_NAME=$SERVICE_NAME\.jar
PID=$SERVICE_NAME\.pid

cd $SERVICE_DIR

case "$1" in

start)
nohup $JRE_HOME/bin/java -Xms256m -Xmx512m -jar $JAR_NAME >/dev/null 2>&1 &
echo $! > $SERVICE_DIR/$PID
echo "=== start $SERVICE_NAME"
;;

stop)
kill `cat $SERVICE_DIR/$PID`
rm -rf $SERVICE_DIR/$PID
echo "=== stop $SERVICE_NAME"

sleep 5
##
## test-service-aa.jar
## test-service-aa-bb.jar
P_ID=`ps -ef | grep -w "$SERVICE_NAME" | grep -v "grep" | awk '{print $2}'`
if [ "$P_ID" == "" ]; then
echo "=== $SERVICE_NAME process not exists or stop success"
else
echo "=== $SERVICE_NAME process pid is:$P_ID"
echo "=== begin kill $SERVICE_NAME process, pid is:$P_ID"
kill -9 $P_ID
fi
;;

restart)
$0 stop
sleep 2
$0 start
echo "=== restart $SERVICE_NAME"
;;

*)
## restart
$0 stop
sleep 2
$0 start
;;

esac
exit 0


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: