注册、配置中心-微服务小白入门(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

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

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

相关推荐
Dawson Zhu2 小时前
《Agentic Design Patterns》第 13 章导读:人机协同(Human-in-the-Loop)
人工智能·语言模型·架构·aigc·agi
姜鱼问生3 小时前
fail2ban 实战:从默认配置到生产可用
后端·算法·架构
做运维的阿瑞3 小时前
公有云算力布局的技术逻辑与工程实践
微服务·云计算·csdn开发云
m0_646429973 小时前
从零搭建 Spring Boot + Nacos + MySQL + OpenFeign + Docker Compose 微服务项目
微服务
Nontee4 小时前
K3s vs K8s:差的不是功能,是交付方式
云原生·容器·kubernetes
做运维的阿瑞4 小时前
Docker常见故障全方位排查指南
运维·docker·云原生·容器
谢亮_vipxieliang4 小时前
云原生存储进阶:CSI 演进与 AI 工作负载的存储架构设计
人工智能·云原生
WeiXin_DZbishe4 小时前
基于微信小程序的本地闲置物品交易平台-计算机毕设 附源码【课程设计】26825
vue.js·spring boot·python·微信小程序·架构·php·课程设计
朱包林4 小时前
iTerm2终端配置指南
linux·javascript·python·云原生·容器·kubernetes·云计算
码云之上5 小时前
Prompt 拦不住 Chatbot 的安全问题:九大风险与分层防护
人工智能·架构·全栈