注册、配置中心-微服务小白入门(2)

Nacos 已经下载安装并且使用了,那么看如何使用: Nacos 注册及配置,以下是一个服务启动后注册到nacos,同时,把该服务的相关配置,写到nacos之中

1、nacos设置

命名空间中,添加对应的服务命名空间,用有意义方便记忆的名字; 服务集群的时候,需要使用对应统一的名称和命名id,

在配置列表里,点击命名空间,添加配置,把原来服务的相关配置,放到nacos

2、微服务添加依赖

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

<!-- springcloud loadbalancer -->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-loadbalancer</artifactId>
</dependency>

<!-- SpringBoot Web -->
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-web</artifactId>
</dependency>

3、微服务添加Nacos配置

# Spring
spring: 
  application:
    # 应用名称
    name: ruoyi-xxxx 
  cloud:
    nacos:
      discovery:
        # 服务注册地址
     
        #server-addr: 172.21.0.2:8848
        server-addr: 192.168.0.161:8848
        username: nacos
        password: nacos
        namespace: 52482f00-be3f-433d-863a-f81705bc61c5     
      config:
        file-extension: yml
        #server-addr: 172.21.0.2:8848
        server-addr: 192.168.0.161:8848
        namespace: 52482f00-be3f-433d-863a-f81705bc61c5  

注册中心

  • 什么是注册中心

注册中心在微服务项目中扮演着非常重要的角色,是微服务架构中的纽带,它记录了服务和服务地址的映射关系。在分布式架构中,服务会注册到这里,当服务需要调用其它服务时,就到这里找到服务的地址,进行调用。

  • 为什么要使用注册中心

注册中心解决了服务发现的问题。在没有注册中心时候,服务间调用需要知道被调方的地址或者代理地址。当服务更换部署地址,就不得不修改调用当中指定的地址或者修改代理配置。而有了注册中心之后,每个服务在调用别人的时候只需要知道服务名称就好,继续地址都会通过注册中心同步过来。

简单讲,理解为域名管理,域名解析服务,有各类二级域名,域名绑定的ip等是相关域名配置信息,或者理解为容易记住理解的通讯录方便查找,找到,统一管理。

配置中心

  • 什么是配置中心

在微服务架构中,当系统从一个单体应用,被拆分成分布式系统上一个个服务节点后,配置文件也必须跟着迁移(分割),这样配置就分散了,各个微服务单独配置管理,很烦的,所以要统一配置。

总得来说,配置中心就是一种统一管理各种应用配置的基础服务组件。

配置中心的服务流程如下:

1、用户在配置中心更新配置信息。

2、相关的服务得到配置更新通知,从配置中心获取配置。

比如数据库,文件服务等等各类配置,统一配置管理,问题是如果一坨服务集群,各个分标签管理,也是个问题。

配置文件加载的优先级(由高到低)

bootstrap.properties ->bootstrap.yml -> application.properties -> application.yml

示例: 多个服务实例注册如下

明白基本的意思就行,至于需要复杂的集群之类的,在脑子里进行思想实现即可,这些都是原理和配置性的工作,一般开发人月,懂基本原理,会用就行,如果有必要再进行深入试验。

相关推荐
Dylanioucn1 小时前
【分布式微服务云原生】掌握分布式缓存:Redis与Memcached的深入解析与实战指南
分布式·缓存·云原生
later_rql2 小时前
k8s-集群部署1
云原生·容器·kubernetes
王彬泽2 小时前
【微服务】组件、基础工程构建(day2)
微服务
Cikiss2 小时前
微服务实战——SpringCache 整合 Redis
java·redis·后端·微服务
Cikiss2 小时前
微服务实战——平台属性
java·数据库·后端·微服务
_.Switch3 小时前
Python机器学习:自然语言处理、计算机视觉与强化学习
python·机器学习·计算机视觉·自然语言处理·架构·tensorflow·scikit-learn
攸攸太上7 小时前
JMeter学习
java·后端·学习·jmeter·微服务
大G哥7 小时前
记一次K8S 环境应用nginx stable-alpine 解析内部域名失败排查思路
运维·nginx·云原生·容器·kubernetes
feng_xiaoshi7 小时前
【云原生】云原生架构的反模式
云原生·架构
妍妍的宝贝7 小时前
k8s 中微服务之 MetailLB 搭配 ingress-nginx 实现七层负载
nginx·微服务·kubernetes