SpringCloud详细笔记(持续更新中)

文章目录

    • 写在前面
    • Java程序员周瑜
    • 尚硅谷:[https://github.com/leelovejava/cloud2020](https://www.bilibili.com/video/BV18E411x7eT?spm_id_from=333.999.0.0)
      • 父工程Project空间创建,父工程pom文件
      • 支付模块构建
      • 开启热部署Devtools:方便调试
      • 消费者订单模块
      • 工程重构
      • 5 Eureka服务注册与发现(已停更,但仍然使用较多)
        • Eureka基础知识:AP
        • P23 actuator微服务信息完善
        • Eureka自我保护理论知识
        • 禁止自我保护
        • 停更说明
      • 6 Zookeeper服务注册与发现(使用较少)
      • 7 Consul服务注册与发现
      • 8 Ribbon负载均衡调用 == 负载均衡 + RestTemplate调用
      • 9 OpenFeign:使用(@FeignClient、@EnableFeignClients、@Autowired )、超时控制(yml中配置ribbon)、日志打印(配置日志bean,yml中开启Feign客户端)
        • 9.1 OpenFeign服务接口调用
        • 9.2 OpenFeign超时控制
        • 9.3 OpenFeign日志打印功能:配置日志bean、yml文件中开启日志的Feign客户端
      • 10 Hystrix断路器
        • 理论
        • 实战
        • Jmeter压力测试工具安装及使用教程
        • 服务降级
          • 支付侧和订单侧fallback
          • 全局服务降级
          • 通配服务降级
        • 服务熔断 = 理论 + 实操 + 总结
        • 服务监控
          • 图形化DashBoard监控平台
      • 11 zuul路由网关
      • 12 Gateway新一代网关
      • 注解总结
        • @Configuration注解
      • 17 SpringCloud Alibaba入门简介
        • 17.1主要功能
        • 17.2组件
        • 17.3引入依赖
      • 18 SpringCloud Alibaba Nacos服务注册和配置中心
        • 18.1 简介:Nacos = Eureka注册中心 + Config配置中心 + Bus服务总线
        • 18.2 安装并运行Nacos
        • 18.3 Nacos作为服务注册中心(参照官网文档)
          • 18.3.1 基于Nocos的服务提供者
          • 18.3.2 基于Nocos的服务消费者
        • 18.4 服务注册中心对比
        • 18.5 Nacos作为服务配置中心
          • Nacos作为配置中心——基础配置:cloudalibaba-config-nacos-client3377
          • Nacos作为配置中心——分类配置
            • 3种方案加载配置
        • 18.6 集群(至少3台)和持久化配置(重要)
      • 19 SpringCloud Alibaba Sentinel实现熔断与限流
      • 20 SpringCloud Alibaba Seata处理分布式事务
      • 21 大厂面试题第三季

写在前面

本博客主要是根据尚硅谷周阳老师课程学习而做的笔记

Github上全套资料(强烈推荐):https://github.com/leelovejava/cloud2020


Java程序员周瑜

SpringCloud详细笔记(持续更新中)_第1张图片

SpringCloud详细笔记(持续更新中)_第2张图片

SpringCloud详细笔记(持续更新中)_第3张图片

尚硅谷:https://github.com/leelovejava/cloud2020

IDEA中maven配置:

SpringCloud详细笔记(持续更新中)_第4张图片

SpringCloud详细笔记(持续更新中)_第5张图片

父工程Project空间创建,父工程pom文件

SpringCloud详细笔记(持续更新中)_第6张图片

父工程pom文件中maven-project-info-reports-plugin爆红解决办法:添加一个依赖

https://blog.csdn.net/weixin_42957931/article/details/108901158

<packaging>pompackaging>
删除src

dependencyManagement和dependencies的区别

SpringCloud详细笔记(持续更新中)_第7张图片

SpringCloud详细笔记(持续更新中)_第8张图片

SpringCloud详细笔记(持续更新中)_第9张图片

支付模块构建

SpringCloud详细笔记(持续更新中)_第10张图片

开启热部署Devtools:方便调试

SpringCloud详细笔记(持续更新中)_第11张图片

消费者订单模块

SpringCloud详细笔记(持续更新中)_第12张图片

80端口的消费者只有Controller

Debug模式启动方便打断点

工程重构

SpringCloud详细笔记(持续更新中)_第13张图片

SpringCloud详细笔记(持续更新中)_第14张图片

5 Eureka服务注册与发现(已停更,但仍然使用较多)

Eureka基础知识:AP

SpringCloud详细笔记(持续更新中)_第15张图片

springcloud 返回的是xml,而不是json解决方案

https://blog.csdn.net/wobenyiwusuoyou/article/details/113837464

SpringCloud详细笔记(持续更新中)_第16张图片

P23 actuator微服务信息完善

服务名称修改:eureka:instance:instance-id:

IP信息提示:eureka:instance:prefer-ip-address: true

SpringCloud详细笔记(持续更新中)_第17张图片

Eureka自我保护理论知识

SpringCloud详细笔记(持续更新中)_第18张图片

禁止自我保护

7001

SpringCloud详细笔记(持续更新中)_第19张图片

8001

SpringCloud详细笔记(持续更新中)_第20张图片

SpringCloud详细笔记(持续更新中)_第21张图片

停更说明

https://github.com/Netflix/eureka/wiki

6 Zookeeper服务注册与发现(使用较少)

https://archive.apache.org/dist/zookeeper/

SpringCloud详细笔记(持续更新中)_第22张图片

阿里云服务器启动Zookeeper

SpringCloud详细笔记(持续更新中)_第23张图片

验证测试

image-20210806112838017

启动Zookeeper客户端,发现服务注册进Zookeeper服务器

SpringCloud详细笔记(持续更新中)_第24张图片

Zookeeper和Eureka

https://www.cnblogs.com/jis121/p/11019273.html

分布式系统的三个指标

1、Consistency 一致性

2、Availability 可用性

3、Partition tolerance 分区容错性

eureka基于AP,强调可用性

zookeeper基于CP,强调一致性

由于作为注册中心可用性的需求要高于一致性,所以eureka貌似要比zookeeper更合理一些

每一个微服务中都有eureka client,用于服务的注册于发现
(服务的注册:把自己注册到eureka server)
(服务的发现:从eureka server获取自己需要的服务列表)

每一个微服务启动的时候,都需要去eureka server注册

当A服务需要调用B服务时,需要从eureka服务端获取B服务的服务列表,然后把列表缓存到本地,然后根据ribbon的客户端负载均衡规则,从服务列表中取到一个B服务,然后去调用此B服务
当A服务下次再此调用B服务时,如果发现本地已经存储了B的服务列表,就不需要再从eureka服务端获取B服务列表,直接根据ribbon的客户端负载均衡规则,从服务列表中取到一个B服务,然后去调用B服务

微服务,默认每30秒,就会从eureka服务端获取一次最新的服务列表

如果某台微服务down机,或者添加了几台机器,此时eureka server会通知订阅他的客户端,并让客户端更新服务列表,而且还会通知其他eureka server更新此信息

心跳检测,微服务每30秒向eureka server发送心跳
eureka server若90s之内都没有收到某个客户端的心跳,则认为此服务出了问题,会从注册的服务列表中将其删除,并通知订阅它的客户端更新服务列表,而且还会通知其他eureka server更新此信息

eureka server保护机制,通过打卡开关,可以让eureka server处于保护状态,主要是用于某eureka sserver由于网络或其他原因,导致接收不到其他微服务的心跳,此时不能盲目的将其他微服务从服务列表中删除。
具体规则:如果一段时间内,85%的服务都没有发送心跳,则此server进入保护状态,此状态下,可以正常接受注册,可以正常提供查询服务,
但是不与其他server同步信息,也不会通知订阅它的客户端,这样就不会误杀其他微服务

zookeeper也可以作为注册中心,用于服务治理(zookeeper还有其他用途,例如:分布式事务锁等)
每启动一个微服务,就会去zk中注册一个临时子节点,
例如:5台订单服务,4台商品服务
(5台订单服务在zk中的订单目录下创建的5个临时节点)
(4台商品服务在zk中的商品目录下创建的4个临时接点)

每当有一个服务down机,由于是临时接点,此节点会立即被删除,并通知订阅该服务的微服务更新服务列表
(zk上有watch,每当有节点更新,都会通知订阅该服务的微服务更新服务列表)

每当有一个新的微服务注册进来,就会在对应的目录下创建临时子节点,并通知订阅该服务的微服务更新服务列表
(zk上有watch,每当有节点更新,都会通知订阅该服务的微服务更新服务列表)

每个微服务30s向zk获取新的服务列表

临时还是持久结点

临时。一定时间内有就留下,否则清理。深刻理解AP和CP,高可用还是数据一致性。

订单服务注册进zookeeper

SpringCloud详细笔记(持续更新中)_第25张图片

image-20210806144732157

7 Consul服务注册与发现

准备工作

中文文档参考手册

https://www.springcloud.cc/spring-cloud-consul.html

下载安装并运行

https://www.consul.io/downloads

SpringCloud详细笔记(持续更新中)_第26张图片

服务提供者,服务消费者注册进Consul

SpringCloud详细笔记(持续更新中)_第27张图片

SpringCloud详细笔记(持续更新中)_第28张图片

测试

image-20210806154642052

image-20210807114640938

8 Ribbon负载均衡调用 == 负载均衡 + RestTemplate调用

7001,7002 Eureka集群

8001,8001 支付集群

SpringCloud详细笔记(持续更新中)_第29张图片

注:spring-cloud-starter-netflix-eureka-client自带了spring-cloud-starter-netflix-ribbon

SpringCloud详细笔记(持续更新中)_第30张图片

SpringCloud详细笔记(持续更新中)_第31张图片

9 OpenFeign:使用(@FeignClient、@EnableFeignClients、@Autowired )、超时控制(yml中配置ribbon)、日志打印(配置日志bean,yml中开启Feign客户端)

9.1 OpenFeign服务接口调用

关键字:

​ 依赖:spring-cloud-starter-openfeign

​ 使用:@FeignClient、@EnableFeignClients、@Autowired

​ 注意事项:集成了ribbon,自带负载均衡效果

总结:

1)主要依赖:spring-cloud-starter-openfeign

如下,openfeign整合了netflix-ribbon,带有负载均衡功能。

2)在**Spring cloud应用中,当我们要使用feign**客户端时,一般要做以下三件事情 :

使用**注解@EnableFeignClients**启用feign客户端;

@SpringBootApplication
@EnableFeignClients
public class TestApplication {
   public static void main(String[] args) {
       SpringApplication.run(TestApplication.class, args);
   }
}

使用注解@FeignClient 定义feign客户端 ;
示例 : 该例子定义了一个feign客户端,将远程服务http://test-service/test/echo映射为一个本地Java方法调用。

@FeignClient(name = "test-service", path = "/test")
public interface TestService {
   @RequestMapping(value = "/echo", method = RequestMethod.GET)
   TestModel echo(@RequestParam("parameter") String parameter);
}

使用注解@Autowired使用上面所定义feign的客户端 ;

@Autowired   
TestService testService;

public void run()
{
   // 这里的使用本地Java API的方式调用远程的Restful接口
   TestModel dto = testService.echo("Hello,你好!");
   log.info("echo : {}", dto);
}

上面的三个步骤,前两个步骤可以理解为定义feign客户端,第三步是使用所定义的feign客户端。通过调试发现,上面第三步所注入的testService是一个代理对象,如下所示 :

testService = {$Proxy66@5502} 
	"HardCodedTarget(type=TestService, name=test-service, url=http://test-service/test)"
 h = {ReflectiveFeign$FeignInvocationHandler@6924} 
  target = {Target$HardCodedTarget@6930} 
  dispatch = {LinkedHashMap@6931}  size = 1
   0 = {LinkedHashMap$Entry@6948} 
   	"public abstract xxx.model.TestModel xxx.service.TestService.echo(java.lang.String)" 

该对象会代理客户端完成远程服务方法的调用,那么,该代理对象是如何生成的 ?这篇文章,我们通过源代码分析来回答这些问题。

参考博客地址:https://blog.csdn.net/andy_zhang2007/article/details/86680622

cloud-consumer-feign-order80的pom.xml

<parent>
  <artifactId>cloud2020artifactId>
  <groupId>com.atguigu.springcloudgroupId>
  <version>1.0-SNAPSHOTversion>
parent>
<modelVersion>4.0.0modelVersion>

<artifactId>cloud-consumer-feign-order80artifactId>
<description>订单消费者之feigndescription>

<dependencies>
  
  <dependency>
    <groupId>org.springframework.cloudgroupId>
    <artifactId>spring-cloud-starter-openfeignartifactId>
  dependency>
  
  <dependency>
    <groupId>   org.springframework.cloudgroupId>
    <artifactId>spring-cloud-starter-netflix-eureka-clientartifactId>
  dependency>
  <dependency>
    <groupId>com.atguigu.springcloudgroupId>
    <artifactId>cloud-api-commonsartifactId>
    <version>${project.version}version>
  dependency>
  <dependency>
    <groupId>org.springframework.bootgroupId>
    <artifactId>spring-boot-starter-webartifactId>
  dependency>
  
  <dependency>
    <groupId>org.springframework.bootgroupId>
    <artifactId>spring-boot-starter-actuatorartifactId>
  dependency>
  
  <dependency>
    <groupId>org.springframework.bootgroupId>
    <artifactId>spring-boot-devtoolsartifactId>
    <scope>runtimescope>
    <optional>trueoptional>
  dependency>
  <dependency>
    <groupId>org.projectlombokgroupId>
    <artifactId>lombokartifactId>
    <optional>trueoptional>
  dependency>
  <dependency>
    <groupId>org.springframework.bootgroupId>
    <artifactId>spring-boot-starter-testartifactId>
    <scope>testscope>
  dependency>
dependencies>

cloud-consumer-feign-order80服务:接口PaymentFeignService + 注解@FeignClient(value = "CLOUD-PAYMENT-SERVICE")完成调用

@Component
@FeignClient(value = "CLOUD-PAYMENT-SERVICE")
public interface PaymentFeignService {

    @GetMapping(value = "payment/get/{id}")
    public CommonResult getPaymentById(@PathVariable("id") Long id);

    @GetMapping(value = "/payment/feign/timeout")
    public String paymentFeignTimeout();

}

cloud-provider-payment8001支付模块8001服务:上面定义的会调用这里暴露的REST地址

SpringCloud详细笔记(持续更新中)_第32张图片

测试:

启动eureka集群7001,7002

启动支付服务8001,8002

启动订单消费者之feign80

分析:

1)使用注解@FeignClient 定义feign客户端 ;

SpringCloud详细笔记(持续更新中)_第33张图片

2)使用**注解@EnableFeignClients**启用feign客户端;

3)使用注解@Autowired使用上面所定义feign的客户端 ;

SpringCloud详细笔记(持续更新中)_第34张图片

4)控制台:

image-20211113024738826

image-20211113024723829

SpringCloud详细笔记(持续更新中)_第35张图片

SpringCloud详细笔记(持续更新中)_第36张图片

SpringCloud详细笔记(持续更新中)_第37张图片

SpringCloud详细笔记(持续更新中)_第38张图片

9.2 OpenFeign超时控制

SpringCloud详细笔记(持续更新中)_第39张图片

OpenFeign默认等待1秒钟,超过后报错

(1)应用场景

(2)开启配置

image-20210807173908134

9.3 OpenFeign日志打印功能:配置日志bean、yml文件中开启日志的Feign客户端

Feign提供了日志打印功能,我们可以通过配置来调整日志级别,从而了解Feign中HTTP请求的细节。也即对Feign接口的调用情况进行监控和输出。

SpringCloud详细笔记(持续更新中)_第40张图片

SpringCloud详细笔记(持续更新中)_第41张图片

10 Hystrix断路器

SpringCloud详细笔记(持续更新中)_第42张图片

理论

SpringCloud详细笔记(持续更新中)_第43张图片

SpringCloud详细笔记(持续更新中)_第44张图片

image-20210807211133652

SpringCloud详细笔记(持续更新中)_第45张图片

实战

SpringCloud详细笔记(持续更新中)_第46张图片

Jmeter压力测试工具安装及使用教程

https://www.cnblogs.com/monjeo/p/9330464.html

http://jmeter.apache.org/download_jmeter.cgi

设置语言为中文

https://www.cnblogs.com/ln-supergood/p/10773391.html

SpringCloud详细笔记(持续更新中)_第47张图片

bin目录下双击jmeter.bat或者以管理员方式运行

SpringCloud详细笔记(持续更新中)_第48张图片

SpringCloud详细笔记(持续更新中)_第49张图片

SpringCloud详细笔记(持续更新中)_第50张图片

服务降级
支付侧和订单侧fallback

SpringCloud详细笔记(持续更新中)_第51张图片

SpringCloud详细笔记(持续更新中)_第52张图片

服务降级一般放在80客户端。

80客户侧服务降级。

image-20210821142911914

SpringCloud详细笔记(持续更新中)_第53张图片

全局服务降级
@DefaultProperties(defaultFallback = "payment_Global_FallbackMethod")

代码繁琐;统一和自定义的分开;

通配服务降级

没有配置fallbackMethod属性的用全局通用,配置了的精确打击。

image-20210821214345641

服务熔断 = 理论 + 实操 + 总结

SpringCloud详细笔记(持续更新中)_第54张图片

Java工具包类库

https://hutool.cn/

理解服务熔断:

多次正确,然后慢慢正确,发现刚开始不满足条件,就算是正确的访问也不能进行;

SpringCloud详细笔记(持续更新中)_第55张图片

SpringCloud详细笔记(持续更新中)_第56张图片

服务监控

SpringCloud详细笔记(持续更新中)_第57张图片

图形化DashBoard监控平台

SpringCloud详细笔记(持续更新中)_第58张图片

下图:断路器打开

image-20210822170834813

SpringCloud详细笔记(持续更新中)_第59张图片

SpringCloud详细笔记(持续更新中)_第60张图片

11 zuul路由网关

可参考第一季的课程

SpringCloud详细笔记(持续更新中)_第61张图片

12 Gateway新一代网关

SpringCloud详细笔记(持续更新中)_第62张图片

注解总结

@Configuration注解

下半场、高级部分

17 SpringCloud Alibaba入门简介

Github上: https://github.com/alibaba/spring-cloud-alibaba/blob/master/README-zh.md

Spring上: https://spring.io/projects/spring-cloud-alibaba#overview

文档: https://spring-cloud-alibaba-group.github.io/github-pages/greenwich/spring-cloud-alibaba.html

17.1主要功能

SpringCloud详细笔记(持续更新中)_第63张图片

17.2组件

SpringCloud详细笔记(持续更新中)_第64张图片

17.3引入依赖

如果需要使用已发布的版本,在 dependencyManagement 中添加如下配置。然后在 dependencies 中添加自己所需使用的依赖即可使用。

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloudgroupId>
            <artifactId>spring-cloud-alibaba-dependenciesartifactId>
            <version>2.2.6.RELEASEversion>
            <type>pomtype>
            <scope>importscope>
        dependency>
    dependencies>
dependencyManagement>

18 SpringCloud Alibaba Nacos服务注册和配置中心

18.1 简介:Nacos = Eureka注册中心 + Config配置中心 + Bus服务总线

SpringCloud详细笔记(持续更新中)_第65张图片

Github上

https://github.com/alibaba/Nacos

官方文档

https://nacos.io/zh-cn/

https://spring-cloud-alibaba-group.github.io/github-pages/greenwich/spring-cloud-alibaba.html#_spring_cloud_alibaba_nacos_discovery

下载

https://github.com/alibaba/nacos/releases/tag/2.0.3

18.2 安装并运行Nacos

**下载:**https://github.com/alibaba/nacos/releases/tag/2.0.3

**mac下启动nacos,bin目录下终端执行命令:**sh startup.sh -m standalone

**访问:**http://localhost:8848/nacos

SpringCloud详细笔记(持续更新中)_第66张图片

18.3 Nacos作为服务注册中心(参照官网文档)
18.3.1 基于Nocos的服务提供者

新建module:cloudalibaba-provider-payment9001

父pom


<dependency>
  <groupId>com.alibaba.cloudgroupId>
  <artifactId>spring-cloud-alibaba-dependenciesartifactId>
  <version>${spring.cloud.alibaba.version}version>
  <type>pomtype>
  <scope>importscope>
dependency>

子pom


<dependency>
    <groupId>com.alibaba.cloudgroupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discoveryartifactId>
dependency>

yml

server:
  port: 9001

spring:
  application:
    name: nacos-payment-provider
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848 #配置Nacos地址

management:
  endpoints:
    web:
      exposure:
        include: '*'

主启动类添加注解 @EnableDiscoveryClient

启动服务,查看nacos

SpringCloud详细笔记(持续更新中)_第67张图片

nacos自带负载均衡,参照9001新建9002:cloudalibaba-provider-payment9002

18.3.2 基于Nocos的服务消费者

ribbon(1)负载均衡;(2)支持RestTemplate 远程调用

ApplicationContextConfig

@Configuration
public class ApplicationContextConfig
{
    @Bean
    @LoadBalanced
    public RestTemplate getRestTemplate()
    {
        return new RestTemplate();
    }
}

OrderNacosController

@RestController
@Slf4j
public class OrderNacosController
{
    @Resource
    private RestTemplate restTemplate;

    @Value("${service-url.nacos-user-service}")
    private String serverURL;

    @GetMapping(value = "/consumer/payment/nacos/{id}")
    public String paymentInfo(@PathVariable("id") Long id)
    {
        return restTemplate.getForObject(serverURL+"/payment/nacos/"+id,String.class);
    }

}
server:
  port: 83


spring:
  application:
    name: nacos-order-consumer
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848


#消费者将要去访问的微服务名称(注册成功进nacos的微服务提供者)
service-url:
  nacos-user-service: http://nacos-payment-provider

测试:

SpringCloud详细笔记(持续更新中)_第68张图片

18.4 服务注册中心对比

SpringCloud详细笔记(持续更新中)_第69张图片

18.5 Nacos作为服务配置中心
Nacos作为配置中心——基础配置:cloudalibaba-config-nacos-client3377

pom.xml


<dependency>
    <groupId>com.alibaba.cloudgroupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-configartifactId>
dependency>

配置文件的加载是存在优先级顺序的,bootstrap.yml优先级高于application.yml

bootstrap.yml(重点的放在这里,全局)

# nacos配置
server:
  port: 3377

spring:
  application:
    name: nacos-config-client
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848 #Nacos服务注册中心地址
      config:
        server-addr: localhost:8848 #Nacos作为配置中心地址
        file-extension: yaml #指定yaml格式的配置
        #group: DEV_GROUP
        #namespace: 7d8f0f5a-6a53-4785-9686-dd460158e5d4


# ${spring.application.name}-${spring.profile.active}.${spring.cloud.nacos.config.file-extension}
# nacos-config-client-dev.yaml

# nacos-config-client-test.yaml   ----> config.info

application.yml(自己的)

spring:
  profiles:
    active: dev # 表示开发环境
    #active: test # 表示测试环境
    #active: info

SpringCloud详细笔记(持续更新中)_第70张图片

Nacos作为配置中心——分类配置
3种方案加载配置

(1)DataID方案

指定spring.profile.active和配置文件的DataID来使不同环境下读取不同的配置

# ${spring.application.name}-${spring.profile.active}.${spring.cloud.nacos.config.file-extension}
# nacos-config-client-dev.yaml

# nacos-config-client-test.yaml   ----> config.info

SpringCloud详细笔记(持续更新中)_第71张图片

spring:
  profiles:
    #active: dev # 表示开发环境
    active: test # 表示测试环境
    #active: info

(2)Group方案

SpringCloud详细笔记(持续更新中)_第72张图片

得到结果如下:

(3)Namespace方案:命名空间–组--配置文件

SpringCloud详细笔记(持续更新中)_第73张图片

SpringCloud详细笔记(持续更新中)_第74张图片

18.6 集群(至少3台)和持久化配置(重要)

https://nacos.io/zh-cn/docs/cluster-mode-quick-start.html

https://nacos.io/zh-cn/docs/deployment.html

默认Nacos使用嵌入式数据库实现数据的存储。所以,如果启动多个默认配置下的Nacos节点,数据存储是存在一致性问题的。
为了解决这个问题,Nacos采用了 集中式存储的方式来支持集群化部署,目前只支持MySQL的存储。

SpringCloud详细笔记(持续更新中)_第75张图片

nacos-server-1.1.4\nacos\conf目录下找到sql脚本

SpringCloud详细笔记(持续更新中)_第76张图片

nacos-server-1.1.4\nacos\conf目录下找到application.properties

SpringCloud详细笔记(持续更新中)_第77张图片

19 SpringCloud Alibaba Sentinel实现熔断与限流

20 SpringCloud Alibaba Seata处理分布式事务

21 大厂面试题第三季

你可能感兴趣的:(spring,java,spring,后端)