dubbo、web应用 项目结构以及发布目录结构

一、dubbo服务项目结构及发布结构
dubbo 服务项目结构
xxxxx-api 接口类和一些DTO 用于供其他项目依赖
需要提供dubbo服务的接口命名 以Facade结尾 (xxxxxFacade.java)

替代文字

xxxxx-service 接口实现 以及dubbo服务暴露
需要提供dubbo服务的服务命名以Impl结尾 (xxxxxImpl.java)
替代文字

关于Duubo服务本地启动方式和用Wrapper方式在服务器启动方式
Duubo服务本地启动方式
采用DUBBO框架自带的Main类的main方法
默认读取在项目的classpath目录下 dubbo.properties配置文件
替代文字
dubbo.properties指定 加载spring文件的路径
作用是告诉main方法读取哪个路径下的spring配置文件

替代文字

采用Wrapper的方式在服务器上启动dobbo
在项目跟目录下建立wrapper文件夹
替代文字

service.sh为shell脚本
通过 ./service.sh start|stop|restart 命令来启停dubbo服务
wrapper.conf为wrapper的配置文件

通过maven打包之后的目录结构为

替代文字

服务器发布的目录结构
Project_Name (根目录)
|_ conf 项目自己的配置文件 (prop.key,server.properties)
|_ xxxxx-service
|_ bin
|_ conf
|_ lib 项目依赖的库(包括项目本身的jar包)
|_ logs 日志文件存放目录

二、web项目通过Wrapper来发布

1、 把应用安装为守护进程
2、把检测jvm运行情况,对于程序原因或内存溢出导致的虚拟机崩溃实现自动重启
3、记录运行日志

web项目打成war包

服务器发布目录结构
Project_Name (根目录)
|_ xxxxx-web
|_ conf 项目自己的配置文件 (prop.key,server.properties)
|_ XXXTomcat

对于wrapper的配置
dubbo服务的配置相对比较简单
wrapper.conf 配置文件
set.JAVA_HOME=/data/apps/java/jdk1.8.0_45 jdk目录
wrapper.java.command=%JAVA_HOME%/bin/java java命令
wrapper.app.parameter.1=cn.lehome.universal.api.open.ServiceApplication 指定启动类
具体 可以参考 demo [https://github.com/gigold/demo.git]
web应用的配置相对复杂
具体 可以参考[java Service Wrapper配置使用]

原文地址:https://www.cnblogs.com/hailongchen/p/8610672.html