SpringCloud微服务E版本升级G版本记录

1、前提

目前微服务 版本信息

 spring boot 1.5.13 ;Edgware.SR4 ;

2019.8.1 Springboot 1.x 版本已经停止维护,boot需要升级为 2.X版本 。Zuul1.x 停止更新, spring-cloud-gateway 功能 比Zuul 1.x功能全面。用 gateway 更换Zuul 替换网关。Eurake闭源,注册中心后期可考虑Consul 或 Nacos 替换。

升级之前采坑准备

Spring Boot 2.1.2 & Spring Cloud Greenwich 升级记录

Feign报错

2、框架升级

先将 注册中心,网关,配置中心 服务版本升级到 Greenwich.SR2版本

cloud服务框架升级完成后,若无时间升级业务服务,则可暂停业务服务升级使用。

注:spring-cloud-gateway 搭建时 无需引用 spring-boot-starter-web,否则会出现冲突

3、业务服务升级

因业务服务,涉及到 FeignClient 调用,需要将服务调用方和提供方 保持同一cloud版本,否则将出现服务调用失败情况。

3.1、组件升级

涉及到 ftp组件,mysql组件,redis组件,mq组件,common工具包,mongdb组件升级。

上述组件中,spring-boot-starter-parent 版本升级为 2.1.3.RELEASE,目的和服务中parent 版本保持一致,防止出现未知异常。

注:

1.mysql组件升级时,pagehelper-spring-boot-starter 采用高版本 如将 1.1.1 升级为 1.2.3  ;mybatis-spring-boot-starter 采用高版本 1.3.1 升级为 2.1.0

2.redis组件升级时,spring-boot-starter-data-redis 需要排除 lettuce-core 依赖

<dependency>

  <groupId>org.springframework.boot</groupId>

  <artifactId>spring-boot-starter-data-redis</artifactId>

  <exclusions>

    <exclusion>

      <groupId>io.lettuce</groupId>

      <artifactId>lettuce-core</artifactId>

    </exclusion>

  </exclusions>

</dependency>

<dependency>

  <groupId>redis.clients</groupId>

  <artifactId>jedis</artifactId>

  <version>2.10.1</version>

</dependency>

3.2、业务服务升级

feign依赖更改

<dependency>

<groupId>org.springframework.cloud</groupId>

<artifactId>spring-cloud-starter-openfeign</artifactId>

</dependency>

client服务提供 需要加上 ContextId 防止bean名称注册重复

@FeignClient(value = "rnjf-apate-data",contextId = "GxbBLoginClient",path = ApateDataConstants.BASE_PATH + "/bank/gxb", fallback = GxbBLoginHystrix.class)

jackson-core : 采用高版本 2.6.1 升级为 2.9.5

logstash :4.7 升级到5.2

配置文件中,

spring.cloud.client.ipAddress  改为 spring.cloud.client.ip-address

server.contextPath 改为 server.servlet.context-path

https://stackoverflow.com/questions/50900677/registered-driver-with-driverclassname-org-gjt-mm-mysql-driver-was-not-found

数据库驱动名称 mysql-connet-java.8.0.15 中 cj目录下

com.mysql.jdbc.Driver需要改为com.mysql.cj.jdbc.Driver

com.zaxxer.hikari.util.DriverDataSource:<init>:68 Registered driver with driverClassName=com.mysql.jdbc.Driver was not found, trying direct instantiation.

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。