前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Nacos 学习笔记

Nacos 学习笔记

作者头像
张云飞Vir
发布2021-12-06 16:57:32
1.9K0
发布2021-12-06 16:57:32
举报
文章被收录于专栏:写代码和思考

1. 背景

最近的一个趋势是Eureca用的少了,都在推荐使用Nacos ,本节我们学习Nacos。

2.知识

一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。

官方主页: https://nacos.io/

Nacos 是什么? Nacos 是 注册中心(Service Registry)和 配置中心(Config Center) ,也可以仅作为注册中心使用。

三个关键特性:

(1) 动态服务发现

  • 服务发现,服务提供者使用 原生SDK、或 其他方式 注册 Service 后,服务消费者可以使用 HTTP API 查找和发现服务。
  • 服务健康监测,Nacos 提供对服务的实时的健康检查,阻止向不健康的主机或服务实例发送请求。

(2) 配置管理 Nacos 的动态配置服务可以让您以 中心化 的方式管理配置文件,将配置文件上传到Nacos后服务提供者在启动后自动获得配置文件,使得配置更方便,统一。

(3) 服务管理 Nacos 提供了web 控制台,可等录入 web管理页操作服务的下线等。

一些概念知识

整体结构是:命名空间下有多个分组,分组下有多个服务。

结构

命名空间 不同的命名空间下,可以存在相同的 Group 或 Data ID 的配置。场景之一是不同环境的配置的区分隔离,例如开发测试环境和生产环境的资源(如配置、服务)隔离等。

默认有个 public 空间,我们还可以建立 dev , test 等空间。

配置分组 配置文件可以用一个名字来分组,如果未填写配置分组的名称,则配置分组的名称默认采用 DEFAULT_GROUP 。一般就 DEFAULT_GROUP 就够了。

健康检查 Nocos 以指定方式检查服务下挂载的实例 (Instance) 的健康度,从而确认该实例 是否能提供服务。

健康保护阈值是 为了防止因过多实例不健康导致流量全部流向健康实例,造成流量压力把健康实例 压垮并形成雪崩效应,当域名健康实例数 占总服务实例数 的比例小于该值时,无论实例是否健康,都会将这个实例返回给客户端。

3. 安装和启动

3.1 下载

前往官网下载 https://github.com/alibaba/nacos/releases

3.2 启动

单机模式运行,在 Linux/Unix/Mac 启动命令:

代码语言:javascript
复制
sh startup.sh -m standalone

在 Linux/Unix/Mac下 .关闭服务器

代码语言:javascript
复制
sh shutdown.sh

3.3 访问 web 地址

打开网址 Http://localhost:8848/nacos 默认账户和密码都是 nacos

4. 和 Springboot 集成

4.1 集成和使用:服务发现

(1)添加依赖

代码语言:javascript
复制
<dependency>
    <groupId>com.alibaba.boot</groupId>
    <artifactId>nacos-discovery-spring-boot-starter</artifactId>
    <version>${latest.version}</version>
</dependency>

(2) 修改配置文件 application.properties 中配置 Nacos server 的地址:

代码语言:javascript
复制
nacos.discovery.server-addr=127.0.0.1:8848

4.2 集成和使用:动态配置

上传 配置文件

将你的配置文件 application.properties 通过web 上传到nacos。文件名格式一般是:{prefix}-{spring.profiles.active}.

  • ${prefix} 是你的 应用的名字
  • ${spring.profiles.active} 是活动的 profile 的名字,比如 dev,test
  • ${file-extension} 是扩展名,比如 yml 或者 properties

添加依赖

代码语言:javascript
复制
<dependency>
    <groupId>com.alibaba.boot</groupId>
    <artifactId>nacos-config-spring-boot-starter</artifactId>
    <version>${latest.version}</version>
</dependency>

修改配置文件 application.properties

在 application.properties 中配置 Nacos server 的地址:

代码语言:javascript
复制
nacos.config.server-addr=127.0.0.1:8848

5.参考:

https://github.com/alibaba/nacos https://nacos.io/zh-cn/docs/quick-start-spring-cloud.html

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/9/4 下午,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 背景
  • 2.知识
    • 三个关键特性:
      • 一些概念知识
      • 3. 安装和启动
        • 3.1 下载
          • 3.2 启动
            • 3.3 访问 web 地址
            • 4. 和 Springboot 集成
              • 4.1 集成和使用:服务发现
                • 4.2 集成和使用:动态配置
                  • 上传 配置文件
                  • 添加依赖
                  • 修改配置文件 application.properties
              • 5.参考:
              相关产品与服务
              对象存储
              对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档