nacos的服务注册以及健康检测机制
namespace:为了可以使nacos上注册的服务和添加的配置实现环境隔离,比如测试环境和生产环境,nacos上可以添加对应的namespace用于区分不同的环境,只有在相同namespace下的服务才可以相互调用
新增namespace步骤如下:
注册服务列表相关备注(因为使用的rpc框架有多种,所以这里就不提及相关的rpc配置)
服务名:注册时定义的服务名称
分组名称:用于定义一类系统的分组
集群名称:多个实例可以分成不同的集群,比如10的实例可以分成两个集群,5个实例一个集群
实例个数:相关应用启动的个数
健康实例数:nacos会定时检测相关应用是否健康
nacos健康检测机制
为什么服务中心需要健康监测机制?
如果服务中心没有健康监测机制,那么注册的服务挂掉以后(比如两个实例,挂掉了一个),订阅服务如果没有得到通知,仍然是50%的向两台机器发送请求,就会有50%的请求失败,出现严重的系统错误,所以服务中心需要检测到注册服务是否健康,如果有服务挂掉以后,需要主动将当前的可用服务信息通知到订阅方。
nacos如何进行健康检查?
nacos有两种健康监测方式,一种是对临时服务,一种是持久化服务,服务注册时通过ephemeral参数进行区分,ephemeral=true代表是临时服务,ephemeral=false代表是持久化服务,所有服务默认为临时服务
临时服务检查机制:由服务主动向服务中心上报心跳,5s上报一次,15s没有上报,服务为不健康服务,30s没有上报,注册中心摘除服务。
持久化服务检查机制:由注册中心主动探测,20s探测一次,探测失败,服务为不健康服务,但是服务不会被摘除。
高并发大流量下健康实例摘除引发服务雪崩
A->B->C ,A服务调用B服务,B服务调用C服务,正常情况下,假如C服务有10个实例,每个实例能够达到的QPS为500,那么整个C服务可以达到5000的qps,但是c服务如果宕机了5个服务,注册中心通知B服务目前只有5个实例可用,那么每个c实例每秒需要接收1000次请求,这个显然大大超出了实例的性能范围,机器会被打死,接着B服务也会无法提供服务,继而A服务无法提供服务。
nacos保护阈值如何避免服务雪崩
每个服务可以设置保护阈值,0到1之间,当健康实例个数比例(健康实例个数/总实例)小于保护阈值时,为了避免服务雪崩,也会向不健康实例发送请求,这样牺牲掉一部请求,避免整个系统无法提供服务。
nacos的服务注册以及健康检测机制相关推荐
- Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现
自Spring Cloud Alibaba发布第一个Release以来,就备受国内开发者的高度关注.虽然Spring Cloud Alibaba还没能纳入Spring Cloud的主版本管理中,但是凭 ...
- Spring Cloud Alibaba教程:使用Nacos作为服务注册中心
点击上方"方志朋",选择"置顶公众号" 技术文章第一时间送达! 什么是Nacos? Nacos 致力于帮助您发现.配置和管理微服务.Nacos 提供了一组简单易 ...
- SpringCloud - Spring Cloud Alibaba 之 Nacos Discovery服务注册发现(三)
阅读本文可先参考博文 https://blog.csdn.net/MinggeQingchun/article/details/125613600 https://blog.csdn.net/Ming ...
- 使用Nacos实现服务注册与发现(spring cloud 组件教程大全四)
使用Nacos实现服务注册与发现(spring cloud 组件教程大全四) idea 创建maven父子工程(spring cloud 组件教程大全 一) windows下nacos的安装及Mysq ...
- Node.js + Consul 实现服务注册、健康检查、配置中心
Node.js + Consul 实现服务注册.健康检查.配置中心 在这篇文章中: 初始化 Consul 客户端 服务注册与健康检查 配置Consul管理控制台 服务配置中心实现 在Nodejs中进行 ...
- nacos实现服务注册与两种消费方式
nacos实现服务注册与两种消费方式 运行nacos 服务注册实例 两种服务消费方式 RestTemplet Feign 测试 参考 运行nacos 预备环境:64位操作系统.64位JDK1.8+.M ...
- consul服务注册与健康检查
consul服务注册与健康检查(centos7) consul简介 consul的服务注册 服务的健康检查 服务查询发现 服务过滤 consul简介 用于实现分布式系统的服务发现与配置.Consul ...
- Nacos中服务注册中心AP、CP模式实现,AP、CP模式切换
本文分析Nacos基于Nacos 2.0 Nacos中服务注册中心默认是AP模式,如果设置为CP模式 那么客户端设置 spring.cloud.nacos.discovery.ephemeral=fa ...
- Nacos系列【23】Nacos2.x服务发现模块之注册中心健康检查机制
有道无术,术尚可求,有术无道,止于术. 资料整理来自Nacos架构与原理电子书,下载地址:https://developer.aliyun.com/ebook/36?spm=a2c6h.2034510 ...
最新文章
- 记录一次frp失效bug
- Android系统架构-[Android取经之路]
- history linux 日志服务器_编译bash实现history的syslog日志记录
- linux 下简单的ftp客户端程序
- c语言的boolean_0基础学习C语言第四章:三种基本结构
- 使用LinkedHashMap的Code4ReferenceList最近使用(LRU)实现
- 【学习笔记】路由算法与路由协议:RIP协议与距离向量算法、OSPF协议与链路状态算法、BGP协议
- React事件的问题
- Windows Server 2012正式版RDS系列⑻
- mysql decimal_MySQL系列之数据类型及约束
- 「leetcode」104559:求树的最大深度
- HBase集成(准备篇)
- 交换机芯片技术知多少
- 计算机万维考试题,计算机培训 万维考试系统选择题题库(含参考答案).pdf
- Niubility!华为天才少年自制机械臂能给葡萄缝针
- 黑群晖frp内网穿透配置
- STM32通过USB方式烧录程序DFU详解 ( 使用新版本的DFU工具 DfuSe_Demo_V3.0.5_Setup 测试ok 2018-7-27 改)
- Json数据的对比工具,对比库(含js在线对比工具,.net 的jsondiffer包)
- Rational Rose--简介
- 怎样才能掌握好计算机知识,简析怎样才能上好计算机课