首页 > 其他分享 >Nacos服务注册与发现的原理

Nacos服务注册与发现的原理

时间:2024-10-11 21:00:56浏览次数:7  
标签:服务 Nacos nacos 实例 注册 服务提供者 原理 cloud

注册中心原理
在微服务的远程调用中,包括两个角色:

  • 服务提供者:提供接口供其他微服务访问。
  • 服务消费者:调用其他微服务提供的接口。

在大型的微服务项目中,微服务提供者的数量非常多,为了管理这些服务就引入了注册中心的概念。注册中心,服务提供者,服务消费者三者之间的关系如下:

流程如下:

  • 服务启动时就会注册自己的服务信息(服务名、IP、端口)到注册中心

  • 调用者可以从注册中心订阅想要的服务,获取服务对应的实例列表(1个服务可能多实例部署)

  • 调用者自己对实例列表负载均衡,挑选一个实例

  • 调用者向该实例发起远程调用
    当服务提供者的实例宕机或者启动新实例时,调用者如何得知呢?

  • 服务提供者会定期向注册中心发送请求,报告自己的健康状态(心跳请求)

  • 当注册中心长时间收不到提供者的心跳时,会认为该实例宕机,将其从服务的实例列表中剔除

  • 当服务有新实例启动时,会发送注册服务请求,其信息会被记录在注册中心的服务实例列表

  • 当注册中心服务列表变更时,会主动通知微服务,更新本地服务列表

Nacos注册中心:

  • Nacos:Alibaba公司出品,目前被集成在SpringCloudAlibaba中,一般用于Java应用
    需要先配置nacos然后登录到nacos
    服务注册:
    1.在拆分出来的个体服的pom文件中导入如下依赖:
点击查看代码
<!--nacos 服务注册发现-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
2. 然后在个体服务的application.yml文件中配置如下参数:
点击查看代码
spring:
  application:
    name:  服务名称
  cloud:
    nacos:
      server-addr: nacos地址
3.重启个体实例 4.访问nacos控制台,可以发现服务注册成功: ![](/i/l/?n=24&i=blog/3535689/202410/3535689-20241011205535590-928012802.png) **服务发现:** 1.引入依赖: 在对应服务的pom文件中引入如下依赖:
点击查看代码
<!--nacos 服务注册发现-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
2.配置Nacos地址: 在对应的服务的application.yml中添加nacos地址配置:
点击查看代码
spring:
  cloud:
    nacos:
      server-addr: 192.168.150.101:8848
3.发现并调用服务 然后就可以调用想要的服务了

标签:服务,Nacos,nacos,实例,注册,服务提供者,原理,cloud
From: https://www.cnblogs.com/guating/p/18459322

相关文章

  • Nacos服务注册与发现的原理
    服务注册和发现1.注册中心原理在微服务远程调用的过程中,包括两个角色:●服务提供者:提供接口供其它微服务访问,比如item-service●服务消费者:调用其它微服务提供的接口,比如cart-service在大型微服务项目中,服务提供者的数量会非常多,为了管理这些服务就引入了注册中心的概念。......
  • Nacos服务注册与发现的原理和如何配置
    由于在大型为微服务项目中存在很多服务提供者,甚至相同的服务会使用不同的路径去调用,为了更好的管理并调用这些服务,我们需要使用注册中心来帮助我们管理这些服务以nacos为例,1.当使用nacos来管理服务的时候,服务启动时会将自己的注册信息,例如服务名,Ip,端口注册到注册中心中。2.调......
  • Nacos服务注册与发现
    1.基本原理概述在微服务调用过程中主要是两个角色一个是服务的消费者,一个是服务的提供者服务提供者:提供接口供其它微服务访问服务消费者:调用其它微服务提供的接口大型微服务项目中,服务提供者的数量会非常多,为了管理这些服务,就需要注册中心来对这些服务进行一个统一管理,服......
  • Redis原理篇 之数据结构
    Redis原理篇之数据结构文章目录Redis原理篇之数据结构1动态字符串SDS1.1SDS介绍1.2SDS扩容1.3SDS优点2IntSet2.1IntSet介绍2.2IntSet升级2.3总结3Dict3.1Dict的原理3.2Dict的扩容3.3Dict的收缩3.4Dict的rehash3.5总结4ZipList4.1ZipList原理4.2Zi......
  • Nacos服务相关
    nacos是阿里开源的一款用于微服务的多服务管理工具,通过服务注册进入内部服务器可以看到注册的服务;服务注册原理:在微服务远程调用的过程中,包括两个角色:服务调用者,调用其他服务的接口,服务提供者,提供接口给其他服务调用在大型微服务项目中,服务提供者的数量会非常多,为了管理这些服......
  • 二、Spring Boot集成Spring Security之实现原理
    二、SpringSecurity实现原理简介使用WebSecurityConfiguration向Spring容器中注册对象springSecurityFilterChain(类型FilterChainProxy)使用SecurityFilterAutoConfiguration向Spring容器中注册对象securityFilterChainRegistration(类型DelegatingFilterProxyRegistrationBean,S......
  • React如何进行性能优化-方式、原理、示例
    目录一、使用shouldComponentUpdate和React.memo1.使用shouldComponentUpdate(类组件)2.使用React.memo(函数组件)二、使用useMemo三、懒加载四、避免使用匿名函数五、避免使用内联对象六、列表使用key属性一、使用shouldComponentUpdate和React.memo1.使用shouldC......
  • 颠倒原理题解
    颠倒原理/reverse时间限制:1000ms空间限制:512MB题目描述\(GreenDuck\)想学习转置原理,但由于它太难了,因此他转而学习更为简单的和图的染色有密切联系的“颠倒原理”\((reverseprinciple)\)。颠倒原理中有个重要的操作叫做“颠倒操作”。对于一个无向连通图\(G\),其节点要么......
  • com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-discovery:jar:unknown was n
    com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-discovery:jar:unknownwasnotfoundinhttp://maven.aliyun.com/nexus/content/repositories/central/duringapreviousattempt.Thisfailurewascachedinthelocalrepositoryandresolutionisnotreatte......
  • 计算机视觉之YOLO算法基本原理和应用场景
     YOLO算法基本原理整体流程YOLO将目标检测问题转化为一个回归问题。它将输入图像划分成多个网格单元,每个网格单元负责预测中心点落在该网格内的目标。对于每个网格单元,YOLO预测多个边界框以及这些边界框中包含目标的类别概率。边界框通常由中心点坐标(x,y)、宽度(w)和高度(h)来表示。......