spring cloud项目升级spring boot 2.0爬过的坑

2023-11-02

注:升级后spring boot为2.0版本,spring cloud为Finchley.M8版本。
2.0官方文档地址:https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/
gitee项目地址:https://gitee.com/lwydyby/springcloud-adplatform

升级时,官方建议引进的依赖(可以提示配置的改动):

<dependency>

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

<artifactId>spring-boot-properties-migrator</artifactId>

</dependency>

一.Eureka

  1. 依赖修改为:
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
  1. 如果引用了actuator,actuator的默认路径有ip:port/info等改为IP:port/actuator/info,以此类推
  2. 如需使用spring boot admin监控项目,则需增加如下配置:
eureka:
  instance:
    hostname: localhost
    metadata-map:
          user.name: admin
          user.password: admin
    health-check-url-path: /actuator/health
    home-page-url-path: /actuator
    status-page-url-path: /actuator/info
  client:
    registerWithEureka: false
    fetchRegistry: false

二.gateway
1. 需要修改的依赖:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-zuul</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
  1. spring boot 2.0中actuator默认只公开info和health接口,如果需要获取更多信息,则需增加如下配置:
management.endpoints.web.exposure.include: "*"

三.monitor
1. 目前spring boot admin作者发布了2.0 测试版,详情见:https://github.com/codecentric/spring-boot-admin
2. 2.0的界面展示:
这里写图片描述
3. spring boot admin需要增加的依赖:

<properties>
        <hystrix.version>1.5.12</hystrix.version>
        <boot.admin.version>2.0.0-SNAPSHOT</boot.admin.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <dependency>
            <groupId>de.codecentric</groupId>
            <artifactId>spring-boot-admin-starter-server</artifactId>
            <version>2.0.0-SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>
        <dependency>
            <groupId>org.jolokia</groupId>
            <artifactId>jolokia-core</artifactId>
        </dependency>

    </dependencies>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
    <repositories>
    <repository>
        <id>sonatype-nexus-staging</id>
        <url>https://oss.sonatype.org/content/groups/public/</url>
    </repository>
    </repositories>

注:这里只提供依赖,2.0的配置也需要调整,有时间再单独写一篇,需要的话可参考官方文档:
https://codecentric.github.io/spring-boot-admin/current/
4. 2.0取消了manage.sleuth.enable配置
四.zipkin
1. 由于spring boot 2.0将UndertowEmbeddedServletContainerFactory替换掉了,zipkin暂时还未更新到spring boot 2.0 版本
这里写图片描述
2. zipkin服务端也没必要使用spring boot2.0,继续使用1.5.x即可
3. zipkin的客户端如果升级为了2.0,则需更改如下依赖:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-stream-binder-kafka</artifactId>
</dependency>

注:我这里使用的kafka作为中间件,进行的存储。根据作者gitter上的留言,目前kafka还是使用的spring kafka的统一配置,如需单独配置,需要自己编写config类即可。
sleuth官方文档地址:https://cloud.spring.io/spring-cloud-static/spring-cloud-sleuth/2.0.0.M5/single/spring-cloud-sleuth.html

最后推荐几个学习spring boot的网站:
1. http://springboot.fun/ Spring中文导航
2. https://www.ibm.com/developerworks/cn/java/j-cn-with-reactor-response-encode/index.html spring5 响应式编程
3. https://spring.io/projects spring官方网站(没办法,最新文档只有英文的)
4. https://www.ibm.com/developerworks/cn/java/spring5-webflux-reactive/index.html 使用 Spring 5 的 WebFlux 开发反应式 Web 应用

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

spring cloud项目升级spring boot 2.0爬过的坑 的相关文章

  • JDK配置,切换

    目录 基础概念 windows 安装版 解压版 多个JDK切换 基础概念 JDK安装版会向注册表里面写入一些配置信息 添加环境变量信息 而解压版不会 需要自己配置环境变量 指向jdk的安装目录JAVA HOME JDK的安装路径 指定命令搜
  • 在openeuler22.03平台上基于atmoz/sftp容器运行老版本的openssh服务器

    在国产化openeuler22 03平台上容器化openssh默认为8 8p1 为进行安全加固 我们将其升级到了9 3了 但部分应用的sftp客户端版本老旧 无法连接到新版服务器 故本文尝试在国产开源操作系统搭建老版本的openssh服务器
  • 更新服务器列表不显示进度条,Ajax 请求服务器更新进度条

    Ajax Progress Bar var xmlHttp var key var bar color gray 进度条的颜色 var span id block var clear function createXMLHttpReques
  • 【C++】泛型编程

    为了让函数或者类有更好的复用性 C 引入了摸板的技术 让不同的数据类型 能使用到相同的函数或者类中去 这种编程的思想也叫做泛型编程 一 摸板 void Swap int left int right int temp left left r
  • Pandas系列学习(二):数据读取与输出

    平时工作中 主要会涉及到csv excel和sql等数据的导入与导出比较多 pandas库也内置了相应的函数进行处理读取与输出这些文件 首先 看看pd read csv 函数的语法格式如下 1 pd read csv pd read csv
  • ArcGIS:读取nc格式文件并导出为tif格式文件,降雨或温度NC等数据

    使用ArcGIS读取nc文件步骤 1 打开ArcGIS 在多维工具下选择 创建NetCDF栅格图层 2 输入nc文件 其他参数可忽略 点击确定 3 创建好后 右键点击图层 点击属性 选择 NetCDF 然后选择波段纬度 接着点击纬度对应的值
  • [XenServer] 修改默认安装XenServer系统盘(4G)大小

    安装XenServer系统盘默认大小为4G 安装前我们可以调整大小 注 此教程只适用于在全新安装XenServer的时候使用 已经安装过XenServer的无法修改系统盘 4G 大小 注 如果带数据重装 安装的时候一定要保证XenServe
  • day o1

    一java的发展史 1995年Sun公司发布Java1 0版本 1997年发布Java 1 1版本 1998年发布Java 1 2版本 2000年发布Java 1 3版本 2002年发布Java 1 4版本 2004年发布Java 1 5版
  • C2143 C4430 C2238错误

    原因是头文件互相包含了 错误1 error C2143 语法错误 缺少 在 lt 的前面 错误2 error C2238 意外的标记位于 之前 错误3 error C4430 缺少类型说明符 假定为int 注意 C 不支持默认int
  • SylixOS下定时器使用

    1 适用范围 本文档介绍SylixOS下实现定时器功能的方法 使用者应熟悉SylixOS以及SylixOS下的编程规范 2 实现方案 SylixOS提供标准定时器接口 用户可在应用层直接调用 下面列出定时器的创建 启动 停止以及删除等操作
  • VM关闭防火墙操作

    VM关闭防火墙操作 链接外网配置 setup 配置ip等 设置开启网卡 进入ifcfg eth0 vim etc sysconfig network scripts ifcfg eth0 修改 ONBOOT yes 重启网卡 service
  • 一、C语言进阶:文件操作

    1 文件操作 1 1 文件的输入输出 输出 使用printf 和命令行重定向 gt 实现文件输出 输入 使用scanf 和命令行重定向 lt 实现文件输入 include
  • Sass/Scss样式复用

    在团队开发中 复用代码能减少冗余 抹平编写风格的差异 或者在编写同主题的组件 统一文字 颜色 间隔等样式 复用样式代码是必不可少的 Sass提供四种样式复用的方法 import extend media mixin import Sass
  • Flutter 切换tabbar 视图重新渲染解决方法

    gt 底部tabbar点击page切换时 会重新加载页面 重新请求接口浪费资源 为解决这个尴尬处境 有个简易的办法在bottomtabbar类中 对 return scaffold body 加入indexedstack body Inde
  • e4a锁屏接收服务器信息,Arduino+ESP8266接收服务器信息

    上一篇文章 Arduino ESP8266上传数据到服务器 我们介绍了Arduino如何将数据上传到服务器上 与之相对应的是如何终端读取服务器的数据 在这一篇文章中我们将进行详细的讲解 为了便于说明 我们先演示一下如何 手动 的上传 读取数
  • Linux系统管理:虚拟机ESXi安装

    目录 一 理论 1 VMware Workstation 2 VMware vSphere Client 3 ESXi 二 实验 1 ESXi 7安装 一 理论 1 VMware Workstation 它是一款专业的虚拟机软件 可以在一台
  • Qt 命令行编译,VC命令行编译,调用nsis

    QT bat脚本 rd q s dist mkdir dist qmake exe helloworld pro spec win32 g CONFIG qtquickcompiler o dist cd dist mingw32 make
  • make[1]: *** Waiting for unfinished jobs....

    安装node js环境时候 make报错 报错信息 make 1 Waiting for unfinished jobs rm 490f1fcf42b2afac71d1c00fb593c736d4a65552 intermediate ma

随机推荐

  • Python执行JS代码的三种方式

    1 使用 js2py 基本操作 import js2py 执行单行js语句 js2py eval js console log abcd gt gt gt abcd 执行js函数 add js2py eval js function add
  • 基于session和token的身份认证方案

    一 基于session的身份认证方案 1 方案图示 2 比较通用的鉴权流程实现如下 在整个流程中有两个拦截器 第一个拦截器 AuthInteceptor是为了每一次的请求的时候都先去session中取user对象 如果session中有 就
  • 组合排列——回溯法的实践

    一 模板 对于回溯问题 可以给一个模板 result def backtracking 参数 if 终止条件 result add 路径 return for 选择 本层集合中元素 树中节点孩子的数量就是集合的大小 处理节点 backtra
  • 微信小程序 组件间关系

    完整微信小程序 Java后端 技术贴目录清单页面 必看 定义和使用组件间关系 有时需要实现这样的组件
  • Linux 压缩、解压文件的 4 种方式。tar、gzip、gunzip、zip、unzip、7z命令使用方法

    Linux 压缩 解压文件的 4 种方式 tar gzip gunzip zip unzip 7z命令使用方法 文章目录 Linux 压缩 解压文件的 4 种方式 tar gzip gunzip zip unzip 7z命令使用方法 1 t
  • JS 读写文件

    用js不能直接读取文件 但是可以利用浏览器提供的activex来实现读写文件的方法 只在IE下测试过 其他浏览器下的activex对象不太清楚 可以网上搜一下 具体读写文件的代码如下 function createAndReadFile v
  • UE4 - 海洋材质水下效果的修改

    屏幕前的污渍MASK修改位置如下 水下扭曲效果 强度修改位置如下 这里改0 1是无效的 只有0和1的区别 如果要调整波纹强度 需要到材质里修改 500的强度改为200 或者100 就很弱了 镜头光晕增加的地方
  • ThreadLocal与InheritableThreadLocal的实现原理

    文章目录 ThreadLocal介绍 使用方式 set 问题 InheritableThreadLocal介绍 源码 方案 ThreadLocal介绍 threadLocal的特点就是与线程绑定 一般通过这种隐式传参的方式来传递上下文 比如
  • vue实现高德地图点聚合功能

    效果截图展示 高德地图点聚合功能 1 创建地图 new AMap Map 示例 this map new AMap Map container resizeEnable true 是否监控地图容器尺寸变化 center 105 34 初始化
  • 终于来了!耗时268天,7大模块、2983页58万字,Android开发核心知识笔记!对标阿里P7!

    版权声明 本文为博主原创文章 未经博主允许不得转载 https www jianshu com u 3348b92f77a4 前言 转眼就快到 金九银十 又是个面试求职的黄金期 近来许多网友都在求一份完整 系统的学习资料和最新的大厂面试真题
  • Objective-C中的@dynamic

    Objective C中的 dynamic 一 dynamic与 synthesize的区别 property有两个对应的词 一个是 synthesize 一个是 dynamic 如果 synthesize和 dynamic都没写 那么默认
  • 【Linux】线程池

    文章目录 1 线程池概念 2 线程池的优点 3 线程池的应用场景 4 线程池的实现 5 STL和智能指针和线程安全 5 1其他常见锁 5 2读写锁 1 线程池概念 线程池是一种线程使用模式 线程过多会带来调度开销 进而影响缓存局部性和整体性
  • Linux UDP编程流程

    文章目录 UDP编程流程 UDP协议无连接的特点 UDP协议数据报的特点 UDP编程流程 UDP 提供的是无连接 不可靠的 数据报服务 服务器端和客户端没有什么本质上的区别 编程流程如下 socket 用来创建套接字 使用 udp 协议时
  • 友盟埋点详解

    数据埋点让产品或运营等相关人员能按照具体的需求 定制性地统计较为复杂的用户数据 例如想要追踪用户的行为 观察页面相关点击数据 关键路径转化率 分析某个事件活动效果时 就需要事先进行数据埋点 关于友盟的初始化配置不是此文的重点 网上一搜一堆的
  • Pycharm配置——解释器(interpreter)

    今天打开pycharm运行一段代码 结果遇到了这个问题 以上应该是没有配置解释器的问题 那我是怎么解决这个问题的呢 1 打开文件 File 2 打开设置 Setting 3 打开新project的默认设置 4点击project Interp
  • vue3使用高德地图api,海量点,多边形围栏,热力图,轨迹线(二)

    五 MassMarks海量点标记 let mass 此处我定义了6种海量点图标 此处url我用的是项目中本地引入的图片 也可以填在线url链接 props infoList是项目后端返回的所有点的信息数组 其中每个点对象有个style字段
  • ArcGIS Pro 一打开Notebook笔记本工具软件就崩溃(停止运行)

    先说结论 如果对于ArcGIS Pro的笔记本工具 包括新建 添加 打开等一切操作 只要一点开 ArcGIS Pro就停止运行 一个可能的原因是Temp文件夹或者是其他文件的路径中有中文 可以尝试将路径修改为全英文 再次运行 其实这个问题是
  • 程序员的自我修养--链接、装载与库笔记:可执行文件的装载与进程

    可执行文件只有装载到内存以后才能被CPU执行 1 进程虚拟地址空间 程序和进程有什么区别 程序 或者狭义上讲可执行文件 是一个静态的概念 它就是一些预先编译好的指令和数据集合的一个文件 进程则是一个动态的概念 它是程序运行时的一个过程 很多
  • centos开放端口号的常用命令

    1 开放端口 firewall cmd zone public add port 5672 tcp permanent 开放5672端口 firewall cmd zone public remove port 5672 tcp perma
  • spring cloud项目升级spring boot 2.0爬过的坑

    注 升级后spring boot为2 0版本 spring cloud为Finchley M8版本 2 0官方文档地址 https docs spring io spring boot docs current reference html