文档章节

springcloud按照jar运行时支持脚本热部署

杰睿宁
 杰睿宁
发布于 2018/01/19 17:26
字数 465
阅读 760
收藏 2

springcloud按照可运行jar包部署时,如果直接将groovy打入jar则不支持热部署。

需要将groovy放置到另一个git目录下编写,开发时使用linked目标放置到project中,部署是不打入jar中。

借助micro-git-sync模块功能在启动时从git仓库中下载groovy脚本加载到springcloud应用中, 同时还可以支持动态发布,即提交新groovy到git仓库后,会自动下载并热部署到springcloud应用中。

使用micro-git-sync模块优点是:

1, 使应用按照可执行jar包运行时,也支持脚本热部署。

2, 准实时自动加载远程git中的新脚本代码。

3, 可以按照指定版本加载脚本。

配置MicroGitSync设置git远程地址和本地下载目录

如果设置了init-method="initRep",则准实时检查远程git仓库是否有代码更新,有则自动下载。

Version可以设置指定的版本,设置为head表示最新版本

cloneFlag表示启动时是否完全clone

openFlag表示是否有效,开发环境中可以设置为false,避免调试程序时从远程下载。

<bean id="gitSync" class="com.nh.micro.sync.git.MicroGitSync"
	init-method="initRep" lazy-init="false">
	<property name="localPath" value="h:/temp/git"></property>
	<property name="remotePath"	value="https://github.com/nhmicro/test-sync-groovy.git"></property>
	<property name="cloneFlag" value="true"></property>
	<property name="openFlag" value="${openFlag}"></property>
	<property name="version" value="head"></property>
</bean>

设置从本地下载目录中加载groovy

注意设置depends-on确保git下载完成后在启动加载

	<bean id="groovyInitUtil" class="com.nh.micro.rule.engine.core.GroovyInitUtil"
		init-method="initGroovy" lazy-init="false" depends-on="gitSync" >
		<property name="fileList">
			<list>
				<bean class="com.nh.micro.rule.engine.core.GFileBean">
					<property name="ruleStamp" value="true"></property>
					<property name="jarFileFlag" value="true"></property>
					<property name="dirFlag" value="true"></property>
					<property name="rulePath" value="/groovy/"></property>
				</bean>
				<bean class="com.nh.micro.rule.engine.core.GFileBean">
					<property name="ruleStamp" value="true"></property>
					<property name="jarFileFlag" value="false"></property>
					<property name="dirFlag" value="true"></property>
					<property name="rulePath" value="H:/temp/git/test-sync/groovy/"></property>
				</bean>					
			</list>
		</property>
	</bean>

© 著作权归作者所有

上一篇: 撮合平台
杰睿宁

杰睿宁

粉丝 9
博文 21
码字总数 15442
作品 10
东城
私信 提问
NHMicro 1.1.10 发布,支持 springcloud 热部署

NHMicro 1.1.10 发布,支持 springcloud 热部署。 springcloud按照可运行jar包部署时,通过micro-git-sync模块启动时和运行时自动同步远程git仓库中脚本,实现脚本热部署。 使用micro-git-s...

杰睿宁
2018/01/19
590
0
NHMicro 1.1.9 发布,支持与 springcloud 整合

NHMicro 1.1.9 发布,支持与 springcloud 整合 整合后 SpringCloud 的 controller 只需编写接口,在接口中配置 SpringCloud相关注解,业务实现在 groovy中编写,支持热部署。 SpringCloud整合...

杰睿宁
2018/01/18
858
0
Spring Cloud-honghu Cloud分布式微服务云系统

简介 鸿鹄云Cloud是基于SpringCloud来封装的,是一系列框架的有序集合。利用Spring Boot的开发模式简化了分布式系统基础设施的开发,如服务发现、注册、配置中心、消息总线、负载均衡、断路器...

itcloud
2018/04/25
572
0
史上最简单的 SpringCloud 教程 | 终章

版权声明:本文为博主原创文章,欢迎转载,转载请注明作者、原文超链接 ,博主地址:http://blog.csdn.net/forezp。 https://blog.csdn.net/forezp/article/details/70148833 转载请标明出处...

方志朋
2017/04/12
0
0
SpringCloud--鸿鹄Cloud分布式微服务云系统

简介 鸿鹄云Cloud是基于SpringCloud来封装的,是一系列框架的有序集合。利用Spring Boot的开发模式简化了分布式系统基础设施的开发,如服务发现、注册、配置中心、消息总线、负载均衡、断路器...

itcloud
2018/07/25
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

Android 图片加载带进度条的ImageView

https://blog.csdn.net/shu_quan/article/details/79975578

shzwork
4分钟前
2
0
关于XAMPP默认端口80 和443被占用的问题

本文转载于:专业的前端网站➩关于XAMPP默认端口80 和443被占用的问题 关于安装xampp-win32-1.8.1-VC9-installer.zip后启动时候报端口80和443被占用的问题解决 xampp-win32-1.8.1-VC9-instal...

前端老手
6分钟前
2
0
错误Setting the parent of a transform which resides in a Prefab Asset is...

错误日志 Setting the parent of a transform which resides in a Prefab Asset is disabled to prevent data corruption 原因1 用Resouce.Load加载一个prefab,没有实例化直接设置parent ......

XBlock
7分钟前
2
0
Spring boot 配置mybatis

当然任何模式都需要首先引入mybatis-spring-boot-starter的pom文件,现在最新版本是1.1.1(刚好快到双11了 :)) <dependency>    <groupId>org.mybatis.spring.boot</groupId>    <......

雷开你的门
8分钟前
4
0
云栖干货回顾 | 更强大的实时数仓构建能力!分析型数据库PostgreSQL 6.0新特性解读

阿里云 AnalyticDB for PostgreSQL 为采用MPP架构的分布式集群数据库,完备支持SQL 2003,部分兼容Oracle语法,支持PL/SQL存储过程,触发器,支持标准数据库事务ACID。AnalyticDB PG通过行存...

开源中国小二
20分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部