在Linux操作系统上手工部署Dubbo服务
1、环境变量配置
2、部署目录规范
3、手工维护Dubbo服务
4、自定义Dubbo服务维护的Shell脚本
5、服务维护注意事项
在Linux操作系统上手工部署Dubbo服务
1、环境变量配置
Java环境变量----只需要JRE
vi /etc/profile
## java env
export JAVA_HOME=/usr/local/java/jdk1.7.0_72
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/li/tools.jar:$JRE_HOME/lib/rt.jar
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
source /etc/profile
2、部署目录规范
/home/yulei/sxfj/service/yulei
要避免应用迁移时的路径冲突
3、手工维护Dubbo服务
java -jar edu-service-xxx.jar &
kill PID
kill -9 PID
4、在防火墙中打开要用到的端口 20880
切换到 root 用户权限,执行以下命令:
# chkconfig iptables on
# service iptables start
编辑/etc/sysconfig/iptables
# vi /etc/sysconfig/iptables
增加以下 1 行:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 20880 -j ACCEPT
重启防火墙:
# service iptables restart
5、自定义Dubbo服务维护的Shell脚本
脚本命名规范:
/home/yulei/edu/service/xxx/service-xxx.sh
例如:
/home/yulei/edu/service/user/service-user.sh
效果:
cd /home/yulei/edu/service/user
. /service-user.sh start
. /service-user.sh stop
. /service-user.sh restart
6、服务维护注意事项(结合自定义的Shell脚本)
(1) 脚本规范---------尽可能通用
(2) 守护进程
(3) 内存调优设置-----按需调整
(4) 日志处理---------只保留应用Log4j输出的日志
(5) 避免服务冲突 ----进程名、端口
(6) 避免进程误杀-----全匹配
脚本配置灵活高深,满足需求则可
可参考官方脚本样例