1.微服务配置中心的补充
1.1 nacos实时刷新
在controller类上加上@RefreshScope注解
1.2 微服务集群共享一个配置文件
应该把每个微服务的配置放入对应配置中心文件中。
#端口号:8080~8089 []
server.port=8080
#数据源
spring.datasource.url=jdbc:mysql://localhost:3306/product
spring.datasource.password=123456
spring.datasource.username=root
spring.datasource.driver-classname=com.mysql.cj.jdbc.Driver
#打印sql日志
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
##注册中心的地址
#spring.cloud.nacos.discovery.server-addr=192.168.28.252:8849,192.168.28.252:8850,192.168.28.252:8851
spring.cloud.nacos.discovery.server-addr=localhost:8848
##起名字 单词之间使用-划线
spring.application.name=product
#zipkin服务端的地址
spring.zipkin.base-url=http://localhost:9411/
student.name=wj
(1)nacos创建一个公共配置文件
(2)在微服务bootstrap文件中
spring.cloud.nacos.server-addr=localhost:8848
#引用公共配置内容
#扩展文件的id
spring.cloud.nacos.config.extension-configs[0].data-id=nacos-data.properties
#扩展文件是否实时刷新
spring.cloud.nacos.config.extension-configs[0].refresh=true
spring.cloud.nacos.config.extension-configs[0].group=DEFAULT_GROUP
2. 微服务保护
2.1 初识sentinel
Sentinel是阿里巴巴开源的一款微服务流量控制组件。官网地址:https://sentinelguard.io/zh-cn/index.html Sentinel
具有以下特征:
丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。
完备的实时监控:Sentinel 同时提供实时的监控功能。您可以在控制台中看到接入应用的单台机器秒级数据,甚至 500 台以下规模的集群的汇总运行情况。
广泛的开源生态:Sentinel 提供开箱即用的与其它开源框架/库的整合模块,例如与 Spring Clou