Nacos

大白话剖析服务发现原理

可以用mysql类比,如下图所示:

  1. 当微服务启动时,向mysql的registry表插入一条数据
  2. 当消费者需要查找服务提供者时,需要到表里去查询数据,得到的数据就是可用的服务提供者
  3. 但是如果每次都要去查询,服务发现组件压力就会很大,并且有可能宕机,因此需要定时去查询,然后将结果保存到服务本地的缓存中
  4. 服务需要每隔一段时间向注册中心发起一次心跳,注册中心更新last_heartbeat字段
  5. 当服务超过一段时间没有向注册中心发送心跳连接时,将status置为DOWN,即该服务被移除


    服务发现.png

什么是Nacos?

服务发现组件和配置服务器
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。

安装Nacos(Docker)

GitHub-nacos-group/nacos-docker

  1. git clone --depth 1 https://github.com/nacos-group/nacos-docker.git
  2. cd nacos-docker
  3. docker-compose -f example/standalone-derby.yaml up
  4. 启动成功,端口号为8848

应用注册到Nacos

  1. 添加依赖
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
  1. 不需要添加注解
  2. 增加配置
spring:
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848
        namespace:用于环境隔离
        cluster-name: 同一集群优先调用
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 前言 从 2017 年底 Java 开发领域使用最广的 RPC 框架 Dubbo 开启重新更新维护之路开始,阿里巴...
    闻人的技术博客阅读 9,873评论 1 30
  • 开春不久在追完大热的《何以笙箫默》后,我一度迷茫不已,接下去黄金档我洗漱完坐被窝该看点什么好呢?所幸不久就有...
    一潇而过阅读 2,241评论 0 0
  • 吹毛求疵的人即便在天堂也能挑出瑕疵。一个安心的人在哪都可以过自得其乐的生活,抱着振奋乐观的思想,如同居住在皇宫一般...
    狂奔君阅读 1,463评论 0 0
  • 前天晚上和同事聚会,吃完饭已经夜色了。我本来不想散步,结果和朋友聊天,聊着走着,不小心走路达到两万步...
    丸子623阅读 4,200评论 4 6
  • 小鱼的世界阅读 1,027评论 0 0

友情链接更多精彩内容