IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> SpringCloudConfig,SpringCloudZipkin,Nacos -> 正文阅读

[Java知识库]SpringCloudConfig,SpringCloudZipkin,Nacos

配置中心(SpringCloudConfig)

概述

在集群搭建时,存在许多类似的服务中的配置信息都相同,在修改的时候维护性较低,所以可以采取一个配置中心将相同的配置内容抽取出来统一管理
在这里插入图片描述
配置信息抽取出来存放在gitee或github的仓库中,应用服务器通过config server来找到配置信息

实现步骤

仓库

gitee勾选README创建新仓库,创建配置文件,配置文件的名称为application-profiles;application:配置客户端的服务名;profiles:配置文件的版本

Config Server

  1. 创建一个配置中心的服务,并引入依赖web与config-server以及bootstrap(对于外部资源文件在bootstrap.yml中加载如果没有引入bootstrap依赖则无效)
    在这里插入图片描述
  2. 创建辅助配置文件bootstrap.yml(bootstrap.yml的加载顺序高于application.yml)来找到仓库
spring:
  application:
    name: service-user
  cloud:
    config:
      server:
        git:
          uri: https://gitee.com/goushengzi123/ticketconfig #配置文件所在仓库
          # 私有仓库配置账号和密码,公有仓库不需要
          #username: github 登录账号
          #password: github 登录密码
          default-label: master #配置文件分支,默认master
          #配置文件所在根目录,这里文件就放在根目录下
          #search-paths: config
  1. application.yml指定端口与git配置
server:
  port: 9010
spring:
  profiles:
    active: native #从本地获取git配置,如果没有指定会获取默认git配置
  1. 入口类上添加注解@EnableConfigServer
  2. 配置完成后可以通过spring官方指定的访问方式来测试,如果可以看到配置文件的内容那么成功
/{application}/{profile}[/{label}]
/{application}-{profile}.yml
/{label}/{application}-{profile}.yml
/{application}-{profile}.properties
/{label}/{application}-{profile}.properties

application:配置客户端应用名称
profiles:版本
label:分支,默认master
如上方,application-profiles就是创建的文件名

Config Client

  1. 引入依赖spring-cloud-starter-config,boostrap
  2. 初始化配置文件bootstrap.yml
spring:
  profiles:
    active: dev

---
spring:
  profiles: dev
  cloud:
    config:
      uri: http://localhost:9010 #指定config server的地址
      label: master #分支
      profile: dev
---
spring:
  profiles: prod
  application:
    name: service-user
  cloud:
    config:
      uri: http://localhost:9010
      label: master
      profile: prod

这里配置了两个版本的配置文件(dev开发环境,sit测试环境,prod生产环境),通过spring.profiles.active来指定版本

  1. 测试是否成功,可以通过在配置文件中自定义属性,然后使用@Value注入到字段中,输出查看

链路追踪(Spring Cloud Zipkin)

概述

Zipkin是一个分布式实时数据跟踪系统(Distributed Tracking System),主要功能是收集,储存,查找来自不同服务的实时监控数据,当微服务越来越多,每个服务操作时间百分比、服务调用是否失败等数据通过zipkin可以很方便的收集到

启动

zipkin是一个jar文件,使用java -jar zipkin.jar指令即可启动zipkin服务器,默认端口是9411

对服务启用监控

  1. 添加依赖spring-cloud-starter-zipkin
  2. 添加配置
spring:
  zipkin:
    base-url: http://localhost:9411

Nacos

概述

Nacos英文全称Dynamic Naming and Configuration Service(动态注册和配置服务),Na为naming/nameServer即注册中心,co为configuration即配置中心,service是指该注册/配置中心都是以服务为核心

Nacos启动

与Ereka不同,nacos是一个独立的服务器,该服务器默认集群启动,使用这样的指令来指定单机启动:sh startup.sh -m standalonelinux,bash startup.sh -m standaloneubuntu linux,startup.cmd -m standalonewindows;默认端口为8848

Nacos Spring Cloud

  1. 引用spring-cloud-alibaba的版本管理
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2021.1</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
  1. 引入nacos依赖
    通过 Nacos Server 和 spring-cloud-starter-alibaba-nacos-config 实现配置的动态变更。
    通过 Nacos Server 和 spring-cloud-starter-alibaba-nacos-discovery 实现服务的注册与发现。
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
  1. 配置
spring:
  cloud:
    nacos:
      config:
        server-addr: localhost:8848
  1. 入口类添加注解@EnableDiscoveryClient开启服务注册,在处理器类添加注解@RefreshScope开启配置自动更新
  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-08-28 08:53:50  更:2021-08-28 08:55:37 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 12:46:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码