SpringBoot使用Nacos几个核心配置

1、Nacos是什么?

   Nacos是阿里巴巴最新开源的项目,核心定位是“一个更易于帮助构建云原生应用的动态服务发现、配置和服务管理平台”。前面四个字母分别为Naming和Configuration的前两个字母,最后的s为Servic。Nacos核心提供两个功能:服务注册与发现,动态配置管理。

2、Nacos作为注册中心

1、引入依赖 (前提要下载好Nacos,并开启服务器)

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

2、在应用的/src/main/resources/application.properrties配置文件中配置Nacos Server地址(8848:Nacos的端口号)

spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848

3、使用@EnableDiscoveryClient开启服务注册发现功能 (在主线程中)
4、启动应用,观察nacos服务列表是否已经注册上服务
注意:每一个应用该有名字,这样才能注册上去。修改application.properties文件

spring.application.name=service-provider
server..port=8000

3、Feign远程调用(调用注册中心的方法)

1、引入依赖

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

2、声明远程接口 (这里直接在接口里面声明想调用的方法就好了)

   @FeignClient("gulimall-coupon")
public interface CouponFeignService{
     @RequesMapping("/coupon/coupon/member/list")
      public R membercoupons()
}

3、开启feign功能

@EnableFeignClients(basePackages="com.atguigu.gulimall.pms.feign")

4、Nacos作为配置中心统一管理配置

1、引入依赖

<dependency>
         <groupId>com.alibaba.cloud</groupId>
         <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
 </dependency>

2、创建一个bootstrap.properties文件。
前提要启动Nacos服务器

spring.application.name=gulimalls-coupon
spring.cloud.nacos.config.server-addr=127.0.0.1:8848

3、需要给配置中心默认添加一个数据集(Date id)

gulimalls-coupon.properties 默认规则。应用名。properties
4、给应用名.properties添加任何配置
5、动态获取配置
@RefreshScope:动态获取并刷新配置
@Value("${配置项的名}"): 获取到配置
如果配置中心和当前应用的配置文件中都配置了相同项,优先使用配置中心的配置

5、配置中心的细节

1、命名空间:配置隔离
默认:public(保留空间):默认新增的所有配置都在public空间。
1)、开发、测试、生产:利用命名空间来做坏境隔离
注意:在bootstrap.properties:配置上,需要使用哪个命名空间下的配置
spring.cloud.nacos.config.namespace=a0bf6327-cae0-45df-a358-fe716d0a8295(唯一id)
2)、每一个微服务之间互相隔离配置,每一个微服务都创建自己的命名空间,只加载自己命名空间下的所有配置
2、配置集:类似文件名
3、配置集id:类似文件名 (Data ID : 类似文件名)
4、配置分组:
默认所有的配置集都属于:DEFAULT_GROUP;
例如 :1111(双十一)、618(京东)1212、(双十二)
项目中的使用:每个微服务创建自己的命名空间,使用配置分组区分坏境,dev,test,prod
5、同时加载多个配置集
1)、微服务任何配置信息,任何配置文件都可以放在配置中心中。
2)、只需要在bootstrap.properrties说明加载配置中心中哪些配置文件即可。
3)、@Value,@ConfigurationProperties…
以前SpringBoot任何方法从配置文件中获取值,都可以使用。
配置中心有的优先使用配置中心中的。

6、API网关的使用

1、在主线程中开启服务注册发现(@EnableDiscoveryClient)
2、在application.properties文件中配置nacos的注册中心地址

 spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
 spring.application.name=gulimall-gateway

3、创建bootstrap.properties(配置nacos相关数据)前提需要nacos中要先配置好项目的配置

spring.application.name=这是引用项目的名称
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
spring.cloud.nacos.config.namespace=nacos中的配置id

4、创建application.yml (注意:这里每一个空格都很重要,表示层级关系)

spring:
  cloud:
    gateway:
      routes:
        - id: test_route   // 这个跳到百度的测试
          uri: https://www.baidu.com   //指定跳到那个路径
          predicates:    //断言,如果下面的query 键和值都符合上面的uri就为true,然后就会跳到指定的路径
            - Query=url, baidu

        - id: qq_route
          uri: https://www.qq.com
          predicates:
          - Query=url, qq     
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值