登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
导读
排行榜
资讯
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
小组
VIP申请
VIP网盘
网盘
联系我们
发帖说明
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
1
2
/ 2 页
下一页
返回列表
首页
›
业界区
›
业界
›
改了 Nacos 一行配置,搞崩线上支付系统! ...
改了 Nacos 一行配置,搞崩线上支付系统!
[ 复制链接 ]
呼延冰枫
2025-10-12 15:35:01
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
节前上线出问题,线上灰度发布后部分用户反馈付款后订单状态不更新,支付服务的失败率飙升。一顿排查后发现致命配置错误。小可爱上线时,将payment-service服务的 Nacos 注册类型改成了ephemeral=false(持久化实例)。
当时其中一台服务节点因内存泄漏频繁 GC,心跳线程被阻塞超过 30 秒,但是由于持久化实例没被 Nacos 剔除,导致调用方持续往这台异常节点发请求,最终拖垮整个支付链路。
这个面试场景题总问,不过很多同学对 Nacos 临时、持久实例的认知,只停留在服务会不会消失的表面,什么时候该用临时,什么时候该用持久,适用场景是什么,没太明白。
注册中心和配置中心本质区别
我们用 Nacos 主要使用到它的服务注册中心和配置中心,它们的设计初衷不同,服务注册中心要求符合 CAP 中的高可用(AP)服务发现不能中断,允许短暂数据不一致;注册中心要求是一致性(CP),配置不能错、不能丢,更新需同步到所有节点。
简单说,注册中心的实例是活的服务节点,配置中心的实例是死的配置文件。
它们之间的实例的概念也不太一样:
对比维度服务注册中心的实例配置中心的实例本质运行中的服务节点(如user-service的某台服务器)静态配置数据单元(如redis-dev.yml配置文件)核心作用提供服务发现,让调用方找到可用节点集中管理配置,支持动态更新创建方式客户端自动注册(如 Spring Cloud 服务启动时)手动创建(控制台 / API)或代码推送生命周期依赖依赖服务节点的运行状态(节点宕机则实例失效)依赖手动维护(不删就一直存在)
注册中心:默认临时实例
要知道服务注册中心的核心需求是实时感知服务可用性。
它设计了临时实例和持久化实例两种模式,分别对应动态服务和静态服务场景。
临时实例
临时实例是 Nacos 服务注册的默认模式
。
Spring Cloud、Dubbo 等业务服务启动时,若不额外配置,都会以临时实例注册。核心逻辑是心跳保活,来检测服务的可用性。
心跳机制:客户端每 5 秒向 Nacos 服务端发送一次心跳;服务端 15 秒没收到心跳,就把实例标记为不健康;30 秒没收到,直接从注册表中剔除实例;
存储方式:实例信息只存在服务端内存中,不写磁盘。Nacos 重启后,所有临时实例都会消失,需客户端重新注册;
故障表现:服务节点宕机、网络中断,或像我们支付服务那样因 GC 阻塞心跳,实例会被自动摘除,调用方不会再路由到无效节点。
持久化实例
持久化实例则完全相反,它针对长期稳定运行、很少变化的基础服务(如 MySQL、Redis、Elasticsearch)设计,核心逻辑是服务端主动探活 + 数据持久化,不适合支付、订单这类动态业务服务。
保活机制:不需要客户端发心跳,而是 Nacos 服务端主动探活。支持 TCP 端口探测(如 MySQL 的 3306 端口)、HTTP 接口探测(如 Redis 的 /health 接口)、自定义协议探测;
存储方式:实例信息会持久化到 Nacos 的数据库(默认 Derby,生产用 MySQL),即使 Nacos 重启,实例信息也不会丢失;
故障表现:实例宕机后,Nacos 只会把它标记为不健康,不会删除。运维能在控制台实时看到故障节点,方便排查,恢复后实例自动变回健康。
在 SpringCloud 项目中,只需在application.yml中添加一行配置,就能切换实例类型,就是这行配置,被新人改错导致了故障:
spring:
cloud:
nacos:
discovery:
server-addr: 192.168.1.100:8848
ephemeral: false # 新人误改为此值,正确应为true(默认)
service: payment-service # 注册的服务名
复制代码
配置中心:默认持久化
Nacos 配置中心的所有配置实例(即配置文件)默认都是持久化的,根本不存在临时配置的概念,所谓的动态更新也和临时无关。
Nacos 配置中心的设计初衷是集中管理配置,避免配置丢失,因此所有配置都满足以下特性:
存储层面:无论在控制台创建、还是用 API 推送的配置,都会持久化到数据库(如 MySQL),即使 Nacos 服务端重启、甚至服务器宕机,配置也不会丢失;
生命周期:配置只会被手动删除或覆盖更新,不会因为客户端断开连接、或服务重启而自动消失;
动态更新:客户端通过长轮询机制监听配置变化(默认每 30 秒轮询一次,可调整),配置更新后 1 秒内推送到客户端。但动态更新是 内容实时变化,不是配置临时存在。
写在最后
说了一大堆其实总结起来就两句话:
服务注册中心:动态业务服务(支付、订单)用临时实例(默认),静态基础组件(MySQL、Redis)用持久化实例;
配置中心:没有临时配置,所有配置默认持久化,动态更新 ≠ 临时存在。
读到这就等于学会!
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
改了
Nacos
一行
配置
搞崩
相关帖子
使用Alpine配置WSL ssh门户
使用Alpine配置WSL ssh门户
使用Alpine配置WSL ssh门户
使用Alpine配置WSL ssh门户
基于 RO1 noetic 配置 32线禾赛雷达 & ALUBI lpms cu3 IMU
pg_auto_failover 配置参数
pg_auto_failover 配置参数
基于 RO2 humble 配置 robosense Helios 32(速腾) & xsense mti 300
基于 RO1 noetic 配置 robosense Helios 32(速腾) & xsense mti 300
基于 RO1 noetic 配置 robosense Helios 32(速腾) & xsense mti 300
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
业界
使用Alpine配置WSL ssh门户
0
1025
郁梓馨
2026-03-30
业界
使用Alpine配置WSL ssh门户
2
193
瞧厨
2026-03-30
业界
使用Alpine配置WSL ssh门户
3
358
任俊慧
2026-03-30
业界
使用Alpine配置WSL ssh门户
0
541
士沌
2026-03-30
安全
基于 RO1 noetic 配置 32线禾赛雷达 & ALUBI lpms cu3 IMU
0
918
缍米
2026-04-02
安全
pg_auto_failover 配置参数
1
13
遏筒煽
2026-04-02
安全
pg_auto_failover 配置参数
0
1011
恿深疏
2026-04-02
业界
基于 RO2 humble 配置 robosense Helios 32(速腾) & xsense mti 300
1
18
茹静曼
2026-04-04
业界
基于 RO1 noetic 配置 robosense Helios 32(速腾) & xsense mti 300
2
9
鸳剿
2026-04-05
业界
基于 RO1 noetic 配置 robosense Helios 32(速腾) & xsense mti 300
0
9
顾星
2026-04-05
回复
(29)
遇玷
2025-11-5 23:51:49
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
感谢分享,下载保存了,貌似很强大
孓访懔
2025-12-1 11:45:54
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
谢谢分享,试用一下
甄婉丽
2025-12-3 09:19:09
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
前排留名,哈哈哈
涂流如
2025-12-17 20:27:41
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
这个好,看起来很实用
昝梓菱
2025-12-25 16:25:49
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
用心讨论,共获提升!
汪玉珂
2026-1-20 23:45:15
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
感谢,下载保存了
丁若云
2026-1-21 08:01:59
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
感谢分享,下载保存了,貌似很强大
梨恐
2026-1-24 04:46:23
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
谢谢楼主提供!
厨浴
2026-1-26 02:50:10
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
鼓励转贴优秀软件安全工具和文档!
揭荸
2026-1-26 10:12:28
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
喜欢鼓捣这些软件,现在用得少,谢谢分享!
空娅芬
2026-2-6 06:52:27
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
前排留名,哈哈哈
袁勤
2026-2-7 04:58:50
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
感谢分享,学习下。
骆贵
2026-2-8 00:31:18
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
懂技术并乐意极积无私分享的人越来越少。珍惜
扔飒
2026-2-8 02:10:34
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
感谢分享,学习下。
第璋胁
2026-2-9 01:35:51
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
过来提前占个楼
栓州
2026-2-9 08:15:32
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
谢谢分享,辛苦了
任修
2026-2-10 09:30:02
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
懂技术并乐意极积无私分享的人越来越少。珍惜
庞悦
2026-2-11 08:43:57
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
这个好,看起来很实用
仲水悦
2026-2-11 11:21:59
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
喜欢鼓捣这些软件,现在用得少,谢谢分享!
下一页 »
1
2
/ 2 页
下一页
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
签约作者
程序园优秀签约作者
发帖
呼延冰枫
2026-2-11 11:21:59
关注
0
粉丝关注
22
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
3934307807
991126
anyue1937
9994892
kk14977
6845359
4
xiangqian
638210
5
神泱
9517
6
宋子
9876
7
韶又彤
9909
8
荪俗
8991
9
蓬森莉
9868
10
俞瑛瑶
10000
查看更多
今日好文热榜
0
Flutter3.41+DeepSeek智能AI应用|flutter3+
813
AI时代的变更到底怎么管?(抛砖引玉版)
696
OJ平台远端代码沙箱开发第一周:需求拆解与
978
万字详解 RAG 基础概念:什么是 RAG? 为什
397
天谋科技入选北京市 2026 年第一批专精特新
158
AI对普通人到底有什么用?这8个场景告诉你
78
【节点】[Reciprocal节点]原理解析与实际应
254
为什么使用 Skillsbase 维护自己的 Skills
369
WorkBuddy:快速开启龙虾(OpenClaw)之旅
541
为什么使用 Skillsbase 维护自己的 Skills
869
为什么使用 Skillsbase 维护自己的 Skills
192
为什么使用 Skillsbase 维护自己的 Skills
689
自我即自感:一种极简存在论(四篇)
707
为什么现在所有大厂都在做 CLI ?(附Cluade
390
GitHub 热门项目 Top 10 | 2026年04月07日
533
.NET 高级开发 | .NET 中的序列化和反序列
88
读2025世界前沿技术发展报告34海洋信息技术
731
读2025世界前沿技术发展报告34海洋信息技术
296
程序员AI编程之提示词【学习笔记】
805
Tcache attack