springcloud-Nacos 更强大的注册中心组件

news2024/11/25 0:28:11

Nacos

实际上从设计思想来说 Eureka 和 nacos 是一样的。
后者是Alibaba推出的 一款更强大 功能更丰富的注册中心
你可以理解为Eureka的高配版

技多不压身既然了解了 Eureka, nacos也来学习一下吧!

安装

首先nacos不像eureka 直接pom里面引个依赖就搞定了,它需要单独的安装 总体就几步 安装 配置 启动 访问

NacosGitHub页面,提供有下载链接,可以下载编译好的Nacos服务端或者源代码:

GitHub主页:https://github.com/alibaba/nacos

GitHubRelease下载页:https://github.com/alibaba/nacos/releases

Nacos默认端口是8848

安装到本地目录之后 到bin文件夹下 输入单机模式启动命令:

  startup.cmd -m standalone

依赖

首先在项目最外层的pom里面 导入管理依赖:

         <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>2.2.5.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

然后在具体的服务里导入客户端依赖,然后把eureka注释掉(为什么叫客户端 和eureka同理 每个服务都是nacos的客户)

        <!--eureka客户端依赖-->
<!--        <dependency>-->
<!--            <groupId>org.springframework.cloud</groupId>-->
<!--            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>-->
<!--        </dependency>-->
        <!-- nacos客户端依赖包 -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

然后我们启动 会发现 已经注册了2个实例 和eureka同理:

在这里插入图片描述
ok 这里就是nacos的基础使用 下面讲两个重要的特性:

服务多级存储模型

回到上面的例子 服务A 要调用 服务B, 但是在实际的生产环境中,服务B可能有成百上千的实例 而且还不在一个城市 比如深圳机房有100个
广州机房有20个 (异地容灾) 一共120个。
当你的服务A 发送一个请求的时候 注册中心发现有120个实例 根据正常的负载均衡原则 那就120个里面挑一个。

但是 因为异地的那20个是以防不测的 正常情况下你跨城市调会比较慢 我希望是请求过来就优先调 深圳的100个实例 如果这100个全挂了 就去调异地的。

所以我们明确一下 nacos里面的集群 就是同在一个地区或者一个机房的多个实例:

在这里插入图片描述
配置其实很简单:

在这里插入图片描述
这里的cluster-name 名字我们自定义就好了 你想让它优先调那个集群就选哪个集群。

环境隔离

环境隔离是一个非常重要的特性,刚才的集群隔离是为了负载均衡 和异地容灾, 而环境隔离一般是我们的开发环境 测试环境 生产环境做隔离,如果大家用过Apollo 动态配置的话就很好理解这个概念。

我们在实际工作中 有很多机器是测试环境用的 有很多机器是生产环境用的, 它们之间肯定是严格隔离的! 当一个测试环境服务A去注册中心找服务B的时候 nacos能把生产环境B给你调吗? 肯定是不行的

所以在nacos里面对所有注册给它的实例 要进行第一级划分就是环境划分,比如配置了dev环境的实例都放一起 让它们相互调用

我们可以在nacos的 命名空间 里面创建独立的命名空间 比如dev test pro

再把它的id配置到application.yml就好了:
在这里插入图片描述
在这里插入图片描述

上面的这些对我们开发人员来说最重要的是理解,因为实际工作中 这些配置都是运维搞的 不需要我们手动配这些,重要的是你要知道nacos这些特性 理解这些配置属性名称代表什么 别一看不认识


最后留一个问题 我们说了配置命名空间和集群 就是application.yml加一行配置就可以了。

可问题来了 现在有10万个机器 每个服务器上部署了一个服务 需要配置命名空间和集群

难道让运维一个一个一个 上去改吗。。。。。。。。

这个怎么解决

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1531508.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

查看angular版本的问题The Angular CLI requires a minimum Node.js version of v18.13.

angular版本与node.js版本不匹配的问题 下载安装angular 查看版本&#xff0c;发现不匹配 安装指定版本即可 查看版本并运行

diandian数据聚合平台参数分析(水)

diandian数据聚合平台参数分析&#xff08;水&#xff09; 链接地址&#xff1a;‘暂无’&#xff08;懂的都懂&#xff09; 1. 打开网页链接&#xff0c;f12 打开控制台&#xff0c;任意搜索。 2 经过对比分析 需要分析参数key 3 通过debugger分析回溯 发现以下参数生成位置 …

许战海战略文库|向宗老致敬!祝娃哈哈未来三十年行稳致远

摘要&#xff1a;许战海咨询对宗老先生的崇高敬意与对民族品牌的坚定支持,许战海咨询运用其独特的战略视角深入剖析产品战略&#xff0c;旨在帮助娃哈哈有效利用自身的竞争优势,打造爆品,实现进一步的高速增长。 娃哈哈品牌当前所面临的种种挑战,其根源在于缺乏明确和有力的主…

智慧公厕:卫生、便捷、安全的新时代厕所变革

在城市快速发展的背景下&#xff0c;公共厕所的建设和管理变得越来越重要。智慧公厕作为厕所变革的一项全新举措&#xff0c;通过建立公共厕所全面感知监测系统&#xff0c;以物联网、互联网、大数据、云计算、自动化控制技术为支撑&#xff0c;实现对公共厕所的智能化管理和运…

论文阅读之AN IMAGE IS WORTH 16X16 WORDS: TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE

文章目录 原文链接主要内容模型图技术细节实验结果 原文链接 AN IMAGE IS WORTH 16X16 WORDS: TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE 主要内容 这篇文章的主要内容是介绍了一种新的计算机视觉模型——Vision Transformer&#xff08;ViT&#xff09;&#xff0c;这是…

机器之心 | 基于DiT,支持4K图像生成,华为诺亚0.6B文生图模型PixArt-Σ来了

本文来源公众号“机器之心”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;基于DiT&#xff0c;支持4K图像生成&#xff0c;华为诺亚0.6B文生图模型PixArt-Σ来了 这个模型和 Sora 一样采用了 DiT 框架。 1 前言 众所周知&#x…

latex如何让标题section取消数字标号

解决方法——加一个*号 在LaTeX中&#xff0c;如果你想让section标题取消数字标号&#xff0c;可以使用section*代替section。section*将生成一个不带数字标号的节标题。 例如&#xff0c;你可以这样写&#xff1a; \section*{这是不带数字标号的节标题}这将生成一个标题&am…

protobuf原理解析-基于protobuf-c实现序列化,反向序列化

1.一个实例 前面介绍了使用protobuf的流程&#xff0e; (1). 定义proto文件来描述需要序列化和反向序列化传输的消息&#xff0e; (2). 借助proto-c&#xff0c;为proto文件生成对应的代码控制文件&#xff0e; (3). 程序借助生成的代码控制文件和protobuf-c动态库的支持实现类…

【C语言】数组结构体枚举联合详解

主页&#xff1a;醋溜马桶圈-CSDN博客 专栏&#xff1a;C语言_醋溜马桶圈的博客-CSDN博客 gitee&#xff1a;mnxcc (mnxcc) - Gitee.com 目录 1.数据在内存中的存储 1.1 数据类型 1.2 整型在内存中的存储 1.2.1原码、反码、补码 1.2.2 大小端介绍 1.2.2.1 什么是大端小端 …

生骨肉冻干喂养有哪些优点?对猫身体好的生骨肉冻干分享

随着科学养猫知识的普及&#xff0c;生骨肉冻干喂养越来越受到养猫人的青睐。生骨肉冻干不仅符合猫咪的饮食天性&#xff0c;还能提供均衡的营养&#xff0c;有助于维护猫咪的口腔和消化系统健康。很多铲屎官看到了生骨肉冻干喂养的好处&#xff0c;打算开始生骨肉冻干喂养&…

module ‘mpmath‘ has no attribute ‘rational‘ 报错解决

**报错&#xff1a;**AttributeError: module ‘mpmath’ has no attribute ‘rational’ 解决&#xff1a; pip install mpmath1.3.0原因&#xff1a; 最新版本的mpmath有变动&#xff0c;直接使用旧版本即可

【virtio-networking 和 vhost-net 简介】

文章目录 Virtio 基本构建块Virtio spec 和 vhost 协议Vhost-net/virtio-net architectureVirtio-networking and OVS总结参考链接 Virtio 是作为虚拟机 (VM)访问简化device&#xff08;如块设备和网络适配器&#xff09;的 标准化开放接口而开发的。Virtio-net是一种虚拟以太…

some/ip CAN CANFD

关于SOME/IP的理解 在CAN总线的车载网络中&#xff0c;通信过程是面向信号的 当ECU的信号的值发生了改变&#xff0c;或者发送周期到了&#xff0c;就会发送消息&#xff0c;而不考虑接收者是否需要&#xff0c;这样就会造成总线上出现不必要的信息&#xff0c;占用了带宽 …

基于 Vue3打造前台+中台通用提效解决方案(中)

33、实现全屏展示功能 我们知道在原生dom上,提供了一些方法来供我们开启或关闭全屏: Element.requestFullscreen()Document.exitFullscreen()Document.fullscreenDocument.fullscreenElement一般浏览器 使用requestFullscreen()和exitFullscreen()来实现 早期版本Chrome浏…

基于python的4s店客户管理系统

技术&#xff1a;pythonmysqlvue 一、背景 进入21世纪网络和计算机得到了飞速发展&#xff0c;并和生活进行了紧密的结合。目前&#xff0c;网络的运行速度以达到了千兆&#xff0c;覆盖范围更是深入到生活中的角角落落。这就促使管理系统的发展。网上办公可以实现远程处理事务…

NetSuite Saved Search-当前库存快照查询报表

最近&#xff0c;在项目上我们遇到了一个需求是&#xff0c;用户想要在一张报表上&#xff0c;看到某一个仓库中批次物料和非批次物料的库存On Hand信息。 其实&#xff0c;系统也有一张原生的库存当前快照报表&#xff0c;但是由于批次物料会涉及太多的批次信息&#xff0c;因…

力扣---打家劫舍---动态规划

思路 1&#xff1a; 我将res[i]定义为&#xff1a;一定要取第 i 个房子的前提下&#xff0c;能获取的最大金额。那么直接用cnt从头记录到尾&#xff0c;每个房子的res最大值即是答案。那么递推公式是什么&#xff1f;res[i]max(res[i-2],res[i-1],...,res[0])nums[i]。数组初始…

设计模式深度解析:适配器模式与桥接模式-灵活应对变化的两种设计策略大比拼

​&#x1f308; 个人主页&#xff1a;danci_ &#x1f525; 系列专栏&#xff1a;《设计模式》 &#x1f4aa;&#x1f3fb; 制定明确可量化的目标&#xff0c;坚持默默的做事。 适配器模式与桥接模式-灵活应对变化的两种设计策略大比拼 探索设计模式的魅力&#xff1a;深入了…

如何实现在固定位置的鼠标连点

鼠大侠的鼠标连点功能是免费的 浏览器搜索下载鼠大侠&#xff0c;指定连点间隔和启动快捷键 点击设置&#xff0c;指定点击位置

【区间、栈】算法例题

目录 六、区间 48. 汇总区间 ① 49. 合并区间 ② 50. 插入区间 ② 51. 用最少数量的箭引爆气球 ② 七、栈 52. 有效的括号 ① 53. 简化路径 ② 54. 最小栈 ② 55. 逆波兰表达式求值 ② √- 56. 基本计算器 ③ 六、区间 48. 汇总区间 ① 给定一个 无重复元素 的 …