更新时间:2026-07-28 GMT+08:00
特性概述
功能定义
GaussDB提供的应急链路,客户端可以通过接入该链路进行应急命令下发,本功能后简称“应急通道”。
用户场景
- 极端负载场景下,如CPU过载、内存过载、线程池满,连接池满,CM(集群管理组件)通过网络建连(libpq)连接数据库探活可能失败,进而触发主备倒换,通过应急通道可以避免此场景下的主备倒换。
- 运维人员通过运维端口连接数据库也可能失败,导致一些关键运维命令无法及时下发,此时可以通过应急通道进行关键命令下发。
规格约束
- 仅支持CN/DN节点,不支持1主1备1日志组网中的日志节点。
- 本需求支持场景:
- GaussDB进程CPU负载峰值达到95%。
- 最大连接数达到max_connections上限,无法新建连接,GUC参数max_connections的描述请参见《参考》中“数据库运行参数说明 > GUC参数说明 > 连接和认证 > 连接设置”章节。
- 内存过载,日志中已不断报memory is temporarily unavailable类错误,无法正常分配内存执行SQL。
- 线程池占满,出现会话堆积,新会话处理缓慢。
- 通过gsql进行应急通道视图查询或运维,5s内返回结果。mem_log生成为异步执行,保证5s内触发生成,生成完毕的时间受磁盘I/O、内存上下文数量及业务并发影响;会话查杀为异步执行,保证5s内下发查杀信号,查杀的成功性及时间受会话执行的业务、锁资源等因素影响。
- 应急通道运维仅支持本地连接节点。
- 通过gsql进行mem_log记录需开启use_workload_manager、enable_memory_limit,请参见操作指导。
- 高CPU场景,需保证enable_control_group参数的开启(默认开启,可进行CPU隔离),才可以保证应急通道100%运维成功,GUC参数enable_control_group具体描述请参见《参考》中“数据库运行参数说明 > GUC参数说明 > 负载管理”章节。