2020
11-29
11-29
Spring Cloud 优雅下线以及灰度发布实现
前言在生产环境中,如何保证在服务升级的时候,不影响用户的体验,这个是一个非常重要的问题。如果在我们升级服务的时候,会造成一段时间内的服务不可用,这就是不够优雅的。那什么是优雅的呢?主要就是指在服务升级的时候,不中断整个服务,让用户无感知,进而不会影响用户的体验,这就是优雅的。实际上,优雅下线是目标,而不是手段,它是一个相对的概念,例如killPID和kill-9PID都是暴力杀死服务,相对于kill-9PID来说,ki...
继续阅读 >
1,之前用的eclipse开发工具来加载springboot加载freemarker模板路径,现在换用idea却不能使用了,所以来记录一下加载freemarker模板三种方式,如下publicvoidsetClassForTemplateLoading(Classclazz,StringpathPrefix);publicvoidsetDirectoryForTemplateLoading(Filedir)throwsIOException;publicvoidsetServletContextForTemplateLoading(ObjectservletContext,Stringpath);看名字也就知道了,分别基于类路径、...
前言最近在学springMVC,做为一个初学者,踩了不少坑,导致项目各种出错在这里向大家分享一下我的项目开发操作,开发springMVC项目步骤:打开idea我的项目运行环境在idea2020版+jdk8+maven选择createnewproject创建一个新的项目idea2020版,第二步选择Maven工程,勾选createfromarchetype选择Maven骨架,选择webapp,注意是第二个webapp不要选错了之后就是选择项目名字,个人随意最后选择自己的Maven,点击finish,Maven工程创...
SpringMVC项目创建,我踩过的bug前言最近在学springMVC,做为一个初学者,踩了不少坑,导致项目各种出错在这里向大家分享一下我的项目开发操作,开发springMVC项目步骤:打开idea我的项目运行环境在idea2020版+jdk8+maven选择createnewproject创建一个新的项目idea2020版,第二步选择Maven工程,勾选createfromarchetype选择Maven骨架,选择webapp,注意是第二个webapp不要选错了之后就是选择项目名字,个人随意最后选择自己的...
1:自定义路径<properties><!--自定义路径--><directory>d:/im/</directory></properties>2:把配置文件打包出来<build><plugins><!--上线部署JAR启动分离依赖lib和配置--><!--打包jar--><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId><configuration><!--不打包资源文件--><excludes>...
【背景】spring-boot项目,打包成可执行jar,项目内有两个带有main方法的类并且都使用了@SpringBootApplication注解(或者另一种情形:你有两个main方法并且所在类都没有使用@SpringBootApplication注解),pom.xml如下<plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>1.5.3.RELEASE</version><executions><execution><goals><goal>rep...
前段时间写了一篇基于mybatis实现的多数据源博客。感觉不是很好,这次打算加入git,来搭建一个基于Mybatis-Plus的多数据源项目Mybatis-Plus就是香前言:该项目分为master数据源与local数据源。假定master数据源为线上数据库,local为本地数据库。后续我们将通过xxl-job的方式,将线上(master)中的数据同步到本地(local)中项目git地址抽时间把项目提交到git仓库,方便大家直接克隆sql文件已置于项目中,数据库使用的mysql创建项目...