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

Dubbo项目开发及部署的简单示例

2016-09-02 09:30 281 查看

Dubbo项目开发及部署的简单示例

本文主要讲解以下几个方面知识点:

简易版Dubbo项目的结构

基于maven的打包操作

linux下Dubbo服务的启动

linux下项目日志的定时清理

1.简易版Dubbo项目的结构



testServer是provider

testClient是consumer

testCall是测试用的

2.基于maven的打包操作

1在pom.xml里添加profiles和plugin

<!--部署profile-->
<profiles>
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<env.devMode>dev</env.devMode>
<skipAssemblyDEV>false</skipAssemblyDEV>
<skipAssemblyPROD>true</skipAssemblyPROD>
</properties>
</profile>

<profile>
<id>prod</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<env.devMode>prod</env.devMode>
<skipAssemblyDEV>true</skipAssemblyDEV>
<skipAssemblyPROD>false</skipAssemblyPROD>
</properties>
</profile>
</profiles>
<!--部署profile结束-->

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>

<!--部署插件-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/dubbo.properties</exclude>
<exclude>**/jdbc.properties</exclude>
<exclude>**/log4j.xml</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>make-assembly-dev</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<skipAssembly>${skipAssemblyDEV}</skipAssembly>
<descriptors>
<descriptor>src/main/assembly/dev/assembly.xml</descriptor>
</descriptors>
<finalName>${project.artifactId}</finalName>
</configuration>
</execution>

<execution>
<id>make-assembly-prod</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<skipAssembly>${skipAssemblyPROD}</skipAssembly>
<descriptors>
<descriptor>src/main/assembly/prod/assembly.xml</descriptor>
</descriptors>
<finalName>${project.artifactId}</finalName>
</configuration>
</execution>
</executions>
</plugin>
<!--部署插件end-->
</plugins>
</build>


2利用IDEA的maven插件打包



如图:现在我们需要打dev模式的包,选中dev,然后双击根目录下Lifecycle的package




查看控制台,上图表示打包成功




进入项目的testServer的target目录下,可以看到我们刚打的包


3.linux下Dubbo服务的启动

1.进入linux服务器将刚才的包下载下来,我是将包在本地利用HFS共享,然后在linux里使用wget命令下载。

2.利用tar命令解压到目标文件夹

3.进入bin目录执行start.sh脚本

4.启动成功

4.linux下项目日志的定时清理

因为在项目运行期间,会打印大量日志到文件,如果不做清理的话,会导致服务器磁盘被塞满,最终导致服务器故障。

1.切换到管理员账户: su

2.输入: crontab -e

3.输入: 00 00 * * * true > /home/userapp/logs/user.html
(00 00 * * * 表示每天凌晨的零点,true >/home/userapp/logs/user.html表示清空绝对路径"/home/userapp/logs/user.html"下该文件里的所有信息)

以上就可以定时的清理日志啦


有不明之处,可以在评论区给我留言,我会及时回答。

以上,献给所有正在implements梦想接口的程序员们。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  dubbo maven linux