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

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

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

相关推荐
2的n次方_5 小时前
Runtime 内存管理深化:推理批处理下的内存复用与生命周期精细控制
c语言·网络·架构
前端市界6 小时前
用 React 手搓一个 3D 翻页书籍组件,呼吸海浪式翻页,交互体验带感!
前端·架构·github
文艺理科生6 小时前
Nginx 路径映射深度解析:从本地开发到生产交付的底层哲学
前端·后端·架构
C澒6 小时前
Vue 项目渐进式迁移 React:组件库接入与跨框架协同技术方案
前端·vue.js·react.js·架构·系统架构
消失的旧时光-19437 小时前
从 Kotlin 到 Dart:为什么 sealed 是处理「多种返回结果」的最佳方式?
android·开发语言·flutter·架构·kotlin·sealed
惊讶的猫7 小时前
OpenFeign(声明式HTTP客户端)
网络·网络协议·http·微服务·openfeign
鹏北海7 小时前
micro-app 微前端项目部署指南
前端·nginx·微服务
L543414467 小时前
告别代码堆砌匠厂架构让你的系统吞吐量翻倍提升
大数据·人工智能·架构·自动化·rpa
子春一8 小时前
Flutter for OpenHarmony:色彩捕手:基于 CIELAB 色差模型与人眼感知的高保真色彩匹配游戏架构解析
flutter·游戏·架构
冻感糕人~9 小时前
收藏备用|小白&程序员必看!AI Agent入门详解(附工业落地实操关联)
大数据·人工智能·架构·大模型·agent·ai大模型·大模型学习