dubbo服务打包部署.docx

一、Dubbo服务的运行方式:

1、使用Servlet容器运行(Tomcat、Jetty等)----不可取

  缺点:增加复杂性(端口、管理)

      浪费资源(内存)

2、自建Main方法类来运行(Spring容器)    ----不建议(本地调试可用)

 缺点: Dobbo本身提供的高级特性没用上

      自已编写启动类可能会有缺陷

3、使用Dubbo框架提供的Main方法类来运行(Spring容器)----建议使用

优点:框架本身提供(com.alibaba.dubbo.container.Main)

可实现优雅关机(ShutdownHook)   

二、使用maven-assembly-plugin打包dubbo服务

1. 首先在pom文件中,添加maven-assembly-plugin插件

<plugin>

<artifactId>maven-assembly-plugin</artifactId>

<configuration>

   <descriptor>src/main/assembly/assembly.xml</descriptor>

</configuration>

<executions>

   <execution>

          <id>make-assembly</id>

          <phase>package</phase>

          <goals>

                 <goal>single</goal>

          </goals>

   </execution>

</executions>

</plugin>

 

在该插件的第四行我们指定了一个assembly.xml文件,下面我们就看看assembly.xml的内容

2assembly.xml内容

<assembly>

   <id>assembly</id>

   <formats>

          <format>tar.gz</format>

   </formats>

   <includeBaseDirectory>true</includeBaseDirectory>

   <fileSets>

          <fileSet>

                 <directory>${project.build.directory}/dubbo/META-INF/assembly/bin</directory>

                 <outputDirectory>bin</outputDirectory>

                 <fileMode>0755</fileMode>

          </fileSet>

          <fileSet>

                 <directory>src/main/assembly/conf</directory>

                 <outputDirectory>conf</outputDirectory>

                 <fileMode>0644</fileMode>

          </fileSet>

   </fileSets>

   <dependencySets>

          <dependencySet>

                 <outputDirectory>lib</outputDirectory>

          </dependencySet>

   </dependencySets>

3、整体项目结构

dubbo服务打包部署.docx_第1张图片

4、运行mvn clean install打包部署

解压压缩文件,目录结构

dubbo服务打包部署.docx_第2张图片

  Bin :程序执行目录

Conf:dubbo配置文件,如果dubbo-service.xml中配置了dubbo的对应属性,则conf目录下的dubbo.properties文件配置会失效,建议不要使用dubbo.properties文件配置,推荐使用对应XML配置

 

Lib:程序依赖的jar

进入bin 目录,运行start.bat/start.sh


你可能感兴趣的:(dubbo服务打包部署.docx)