计算
弹性云服务器 ECS
Flexus云服务
裸金属服务器 BMS
弹性伸缩 AS
镜像服务 IMS
专属主机 DeH
函数工作流 FunctionGraph
云手机服务器 CPH
Huawei Cloud EulerOS
网络
虚拟私有云 VPC
弹性公网IP EIP
虚拟专用网络 VPN
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
VPC终端节点 VPCEP
云连接 CC
企业路由器 ER
企业交换机 ESW
全球加速 GA
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
边缘安全 EdgeSec
CDN与智能边缘
内容分发网络 CDN
CloudPond云服务
智能边缘云 IEC
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
迁移中心 MGC
大数据
MapReduce服务 MRS
数据湖探索 DLI
表格存储服务 CloudTable
云搜索服务 CSS
数据接入服务 DIS
数据仓库服务 GaussDB(DWS)
数据治理中心 DataArts Studio
数据可视化 DLV
数据湖工厂 DLF
湖仓构建 LakeFormation
企业应用
云桌面 Workspace
应用与数据集成平台 ROMA Connect
云解析服务 DNS
专属云
专属计算集群 DCC
IoT物联网
IoT物联网
设备接入 IoTDA
智能边缘平台 IEF
云生态
合作伙伴中心
云商店
开发者工具
SDK开发指南
API签名指南
Terraform
华为云命令行工具服务 KooCLI
其他
产品价格详情
系统权限
管理控制台
客户关联华为云合作伙伴须知
消息中心
公共问题
视频
视频直播 Live
视频点播 VOD
媒体处理 MPC
实时音视频 SparkRTC
数字内容生产线 MetaStudio
开发与运维
应用管理与运维平台 ServiceStage
软件开发生产线 CodeArts
需求管理 CodeArts Req
部署 CodeArts Deploy
性能测试 CodeArts PerfTest
编译构建 CodeArts Build
流水线 CodeArts Pipeline
制品仓库 CodeArts Artifact
测试计划 CodeArts TestPlan
代码检查 CodeArts Check
代码托管 CodeArts Repo
云应用引擎 CAE
华为云Astro轻应用
华为云Astro大屏应用
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
存储容灾服务 SDRS
高性能弹性文件服务 SFS Turbo
弹性文件服务 SFS
云硬盘备份 VBS
云服务器备份 CSBS
数据快递服务 DES
专属分布式存储服务 DSS
容器
云容器引擎 CCE
容器镜像服务 SWR
应用服务网格 ASM
华为云UCS
云容器实例 CCI
管理与监管
云监控服务 CES
统一身份认证服务 IAM
资源编排服务 RFS
云审计服务 CTS
标签管理服务 TMS
云日志服务 LTS
配置审计 Config
资源访问管理 RAM
消息通知服务 SMN
应用运维管理 AOM
应用性能管理 APM
组织 Organizations
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
应用身份管理服务 OneAccess
数据库
云数据库 RDS
文档数据库服务 DDS
数据管理服务 DAS
数据复制服务 DRS
云数据库 GeminiDB
云数据库 GaussDB
分布式数据库中间件 DDM
数据库和应用迁移 UGO
云数据库 TaurusDB
人工智能
人脸识别服务 FRS
图引擎服务 GES
图像识别 Image
内容审核 Moderation
文字识别 OCR
AI开发平台ModelArts
图像搜索 ImageSearch
对话机器人服务 CBS
华为HiLens
视频智能分析服务 VIAS
语音交互服务 SIS
应用中间件
分布式缓存服务 DCS
API网关 APIG
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
多活高可用服务 MAS
事件网格 EG
企业协同
华为云会议 Meeting
云通信
消息&短信 MSGSMS
云化转型
云架构中心
云采用框架
用户服务
账号中心
费用中心
成本中心
资源中心
企业管理
工单管理
国际站常见问题
ICP备案
我的凭证
支持计划
客户运营能力
合作伙伴支持计划
专业服务
区块链
区块链服务 BCS
Web3节点引擎服务 NES
解决方案
SAP
高性能计算 HPC
开天aPaaS
云消息服务 KooMessage
云手机服务 KooPhone
云空间服务 KooDrive

通信库参数

更新时间:2025-05-29 GMT+08:00

本节介绍通信库相关的参数设置及取值范围等内容。

tcp_keepalives_idle

参数说明:在支持TCP_KEEPIDLE套接字选项的系统上,设置发送保持活跃信号的间隔秒数。不设置发送保持活跃信号,连接就会处于闲置状态。

说明:
  • 如果操作系统不支持TCP_KEEPIDLE选项 ,这个参数的值必须为0。
  • 在通过Unix域套接字进行的连接的操作系统上,这个参数将被忽略。
  • 将该值设置为0时,将使用系统的值。
  • 该参数在不同的会话之间不共享,也就是说不同的会话连接可能有不同的值。
  • 查看该参数时查出来的是当前会话连接内的参数值,而不是GUC副本的值。

参数类型:整型

参数单位:s(秒)

取值范围:0 ~ 3600

默认值:60

设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。例如,不带单位取值60,表示tcp_keepalives_idle为60s;带单位取值1min,表示tcp_keepalives_idle为1min。取值如果要带单位,必须为s、min、h、d。

设置建议:设置时请确认操作系统是否支持TCP_KEEPIDLE套接字选项。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

tcp_keepalives_interval

参数说明:在支持TCP_KEEPINTVL套接字选项的操作系统上,设置重新传输之间等待响应的时间。

说明:
  • 如果操作系统不支持TCP_KEEPINTVL选项,这个参数的值必须为0。
  • 在通过UNIX域套接字进行的连接的操作系统上,这个参数将被忽略。
  • 将该值设置为0时,将使用系统的值。
  • 该参数在不同的会话之间不共享,也就是说不同的会话连接可能有不同的值。
  • 查看该参数时查出来的是当前会话连接内的参数值,而不是GUC副本的值。

参数类型:整型

参数单位:s(秒)

取值范围:0 ~ 180

默认值:30

设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。例如,不带单位取值60,表示tcp_keepalives_interval为60s;带单位取值1min,表示tcp_keepalives_interval为1min。取值如果要带单位,必须为s、min、h、d。

设置建议:设置时请确认操作系统是否支持TCP_KEEPINTVL套接字选项。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

tcp_keepalives_count

参数说明:在支持TCP_KEEPCNT套接字选项的操作系统上,设置GaussDB服务端在断开与客户端连接之前可以等待的保持活跃信号个数。

说明:
  • 如果操作系统不支持TCP_KEEPCNT选项,这个参数的值必须为0。
  • 在通过Unix域套接字进行连接的操作系统上,这个参数将被忽略。
  • 将该值设置为0时,将使用系统的值。
  • 该参数在不同的会话之间不共享,也就是说不同的会话连接可能有不同的值。
  • 查看该参数时查出来的是当前会话连接内的参数值,而不是GUC副本的值。

参数类型:整型

参数单位:

取值范围:0 ~ 100,其中0表示GaussDB未收到客户端反馈的保持活跃信号则立即断开连接。

默认值:20

设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。

设置建议:设置时请确认操作系统是否支持TCP_KEEPCNT套接字选项。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

tcp_user_timeout

参数说明:在支持TCP_USER_TIMEOUT套接字选项的操作系统上,设置GaussDB在发送数据时,指定传输的数据在TCP连接被强制关闭之前可以保持未确认状态的最大时长。

说明:
  • 如果操作系统不支持TCP_USER_TIMEOUT选项,这个参数的值将不生效,默认为0。
  • 在通过UNIX域套接字进行连接的操作系统上,这个参数将被忽略。

参数类型:整型

参数单位:ms(毫秒)

取值范围:0 ~ 3600000

默认值:0,表示跟随操作系统设置。

注意,不同操作系统内核下,这个参数生效结果将不同:

  • aarch64 EulerOS(Linux内核版本:4.19),超时时间即为该参数设置值。
  • x86 Euler2.5(Linux内核版本:3.10),超时时间不是该参数设置值,而是不同区间的最大值,即超时时间取值为:tcp_user_timeout设置值所处“Linux TCP重传总耗时”区间的上限最大值。例如:tcp_user_timeout=40000时,重传总耗时为51秒。
    表1 x86 Euler2.5(Linux内核版本:3.10)tcp_user_timeout参数取值示意

    Linux TCP重传次数

    Linux TCP重传总耗时区间(秒)

    tcp_user_timeout设置举例(毫秒)

    实际Linux TCP重传总耗时(秒)

    1

    (0.2,0.6]

    400

    0.6

    2

    (0.6,1.4]

    1000

    1.4

    3

    (1.4,3]

    2000

    3

    4

    (3,6.2]

    4000

    6.2

    5

    (6.2,12.6]

    10000

    12.6

    6

    (12.6,25.4]

    20000

    25.4

    7

    (25.4,51]

    40000

    51

    8

    (51,102.2]

    80000

    102.2

    9

    (102.2,204.6]

    150000

    204.6

    10

    (204.6,324.6]

    260000

    324.6

    11

    (324.6,444.6]

    400000

    444.6

    注:TCP每次重传耗时随重传次数指数增加,当TCP一次重传到达120秒后,后续每次重传都将耗时120秒不再变化。

设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。

设置建议:设置时请确认操作系统是否支持TCP_USER_TIMEOUT套接字选项。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

tcp_syn_retries

参数说明:在支持TCP_SYNCNT套接字选项的操作系统上,设置GaussDB连接其他内部节点时,建立连接三次握手阶段SYN包发送失败而重传的次数。

参数类型:整型

参数单位:

取值范围:0-127,其中0表示跟随操作系统设置。

默认值:0

设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。

设置建议:保持默认。

设置不当的风险与影响:该参数设置过小(大于0)时,网络波动情况下,会导致SYN重传次数较少,若重传时长少于网络恢复时长,会导致建连失败;该参数设置过大时,网络不通情况下,会导致SYN重传次数较多,重传时间较长,造成整体报错的时间变长。

须知:
  • 如果操作系统不支持TCP_SYNCNT选项,这个参数的值将不生效,默认为0。
  • 在通过Unix域套接字进行连接的操作系统上,这个参数将被忽略。

comm_tcp_mode

参数说明通信库使用TCP协议建立数据通道的切换开关,重启集群生效。

说明:

SCTP协议的连接不再提供支持,为了保持兼容,提供此参数的接口,但此参数会在设置过程中强制改为on。

参数类型:布尔型

参数单位:

取值范围:CN设置为on表示使用TCP模式连接DNDN设置为on表示DN间使用TCP代理通信。

默认值:on

设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。

设置建议:推荐使用默认值。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

comm_sctp_port

参数说明:TCP代理通信库使用的TCP协议侦听端口,负责侦听数据报文通道。

参数类型:整型

参数单位:

取值范围:0 ~ 65535

默认值:25110(实际值为GUC参数port值+2,取决于用户配置)

设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。

设置建议:不建议用户配置,集群安装时会自动下发相关配置。

设置不当的风险与影响:集群部署时会自动分配此端口号,请不要轻易修改此参数,如端口号配置不正确会导致数据库通信失败。

comm_control_port

参数说明:TCP代理通信库使用的TCP协议侦听端口。

参数类型:整型

参数单位:

取值范围:0 ~ 65535

默认值:25111(实际值为GUC参数port值+3,取决于用户配置)

设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。

设置建议:不建议用户配置,集群安装时会自动下发相关配置。

设置不当的风险与影响:集群部署时会自动分配此端口号,请不要轻易修改此参数,如端口号配置不正确会导致数据库通信失败。

comm_max_datanode

参数说明:TCP代理通信库支持的最大DN数。

参数类型:整型

参数单位:

取值范围:1 ~ 8192

默认值:单个节点支持的最大主DN数量。

设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置,缩容时该参数需重启集群才会生效。

设置建议:推荐设置为256。

设置不当的风险与影响:参数取值小于当前集群DN数量时,会导致建立连接失败。设置过大会占用过多内存。

comm_max_stream

参数说明:TCP代理通信库支持的最大并发数据流数。该参数必须大于业务并发数*每并发平均stream算子数*query_dop的平方。

参数类型:整型

参数单位:

取值范围:1 ~ 60000

默认值:1024

设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。

设置建议:

  • 不建议该参数值设置过大,因为comm_max_stream会占用内存(占用内存=256byte*comm_max_stream*comm_max_datanode),若并发数据流过大,查询较为复杂及smp过大都会导致内存不足。
  • 如果comm_max_stream参数值较小,进程内存充足,可以适当将comm_max_stream值调大。

设置不当的风险与影响:参数设置过小会限制大并发分布式stream查询;设置过大可能会占用过多内存。

comm_max_receiver

参数说明:TCP代理通信库内部接收线程数量。

参数类型:整型

参数单位:

取值范围:1 ~ 50

默认值:4

设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。

设置建议:推荐使用默认值,避免过多的线程资源,带来的线程切换调度。

设置不当的风险与影响:若设置过大会启动过多数据接收线程,造成线程资源浪费。

comm_quota_size

参数说明:TCP代理通信库最大可连续发送包总大小。

参数类型:整型

参数单位:kB

取值范围:0 ~ 2048000

默认值:1024

设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。例如,不带单位取值1024,表示comm_quota_size为1024kB;带单位取值1MB,表示comm_quota_size为1MB。取值如果要带单位,必须为kB、MB、GB。

设置建议:推荐使用默认值。使用1GE网卡时,建议取较小值,推荐设置为20kB~40kB。

设置不当的风险与影响:设置过小可能会导致TCP通信库收发阶段等待quota。

comm_usable_memory

参数说明:单个DN内TCP代理通信库缓存最大可使用内存。

参数类型:整型

参数单位:kB

取值范围:102400 ~ 1073741823

默认值:4096000(即4000MB)

设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。例如,不带单位取值102400,表示comm_usable_memory为102400kB;带单位取值100MB,表示comm_usable_memory为100MB。取值如果要带单位,必须为kB、MB、GB。

设置建议:推荐使用默认值。此参数需根据环境内存及部署方式具体配置。

设置不当的风险与影响:参数设置过大会造成OOM,过小会降低TCP代理通信库性能。

comm_memory_pool

参数说明:单个DN内TCP代理通信库可使用内存池资源的容量大小。

参数类型:整型

参数单位:kB

取值范围:102400 ~ 1073741823

默认值:2048000(即2000MB)

设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。例如,不带单位取值102400,表示comm_memory_pool为102400kB;带单位取值100MB,表示comm_memory_pool为100MB。取值如果要带单位,必须为kB、MB、GB。

设置建议:推荐使用默认值。此参数需根据实际业务情况做调整,若通信库使用内存小,可设置该参数数值较小,反之设置数值较大。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

comm_memory_pool_percent

参数说明:单个DN内TCP代理通信库可使用内存池资源的百分比,用于自适应负载预留通信库通信消耗的内存大小。

参数类型:整型

参数单位:

取值范围:0 ~ 100

默认值:0

设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。

设置建议:推荐使用默认值。此参数需根据实际业务情况做调整,若通信库使用内存小,可设置该参数数值较小,反之设置数值较大。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

comm_client_bind

参数说明通信库客户端发起连接时是否使用bind绑定指定IP。

参数类型:布尔型

参数单位:

取值范围:

  • on:表示绑定指定IP。
  • off:表示不绑定指定IP。

默认值:off

设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。

设置建议:如果集群某一节点存在多个IP处于同一通信网段时,需设置为on。此时将绑定本地listen_addresses指定的IP发起通信,随机端口号不能重复使用,集群并发数量会受到可用随机端口号数量的限制。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

comm_no_delay

参数说明是否使用通信库连接的NO_DELAY属性。

参数类型:布尔型

参数单位:

取值范围:

  • on:表示使用NO_DELAY属性。
  • off:表示不使用NO_DELAY属性。

默认值:off

设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。

设置建议:总体上,时延敏感型业务建议打开;吞吐要求高时,建议关闭。此外,当集群出现因每秒接收数据包过多导致的丢包时,需设置为off,以便小包合并成大包发送,减少数据包总数。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

comm_debug_mode

参数说明:TCP代理通信库debug模式开关,该参数设置是否打印通信层详细日志。

参数类型:布尔型

参数单位:

取值范围:

  • on:表示打印通信库详细debug日志。
  • off:表示不打印通信库详细debug日志。

默认值:off

设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。

设置建议:设置为on时,打印日志量较大,会增加额外的overhead并降低数据库性能,建议仅在调试时打开。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

comm_ackchk_time

参数说明:无数据包接收情况下,该参数设置通信库服务端主动ACK触发时长。

参数类型:整型

参数单位:ms(毫秒)

取值范围:0 ~ 20000。取值为0表示关闭此功能。

默认值:2000

设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。例如,不带单位取值60,表示comm_ackchk_time为60ms;带单位取值1min,表示comm_ackchk_time为1min。取值如果要带单位,必须为ms、s、min、h、d。

设置建议:推荐使用默认值。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

comm_timer_mode

参数说明:TCP代理通信库timer模式开关,该参数设置是否打印通信层各阶段时间桩。

参数类型:布尔型

参数单位:

取值范围:

  • on:表示打印通信库详细时间桩日志。
  • off:表示不打印通信库详细时间桩日志。

默认值:off

设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。

设置建议:设置为on时,打印日志量较大,会增加额外的overhead并降低数据库性能,建议仅在调试时打开。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

comm_stat_mode

参数说明:TCP代理通信库stat模式开关,该参数设置是否打印通信层的统计信息。

参数类型:布尔型

参数单位:

取值范围:

  • on:表示打印通信库统计信息日志。
  • off:表示不打印通信库统计信息日志。

默认值:off

设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。

设置建议:设置为on时,打印日志量较大,会增加额外的overhead并降低数据库性能,建议仅在调试时打开。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

enable_stateless_pooler_reuse

参数说明pooler连接池复用切换开关,开启后可对已有的空闲TCP连接进行复用,重启集群生效。

参数类型:布尔型

参数单位:

取值范围:

  • on:表示使用pooler复用模式。
  • off:表示关闭pooler复用模式。

默认值:on

设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。

设置建议:CN和DN需要同步设置。如果CN设置enable_stateless_pooler_reuse为off,DN设置enable_stateless_pooler_reuse为on会导致集群不能正常通信,因此必须对该参数做CN和DN全局相同的配置,重启集群生效。

设置不当的风险与影响:当该参数关闭时,pooler连接池复用粒度会降低,DN的内存消耗可能会增加。

comm_cn_dn_logic_conn

参数说明CN和DN间逻辑连接特性开关,重启集群生效。

说明:

不再提供CN和DN之间的逻辑连接支持,为了保持兼容,提供此参数的接口,但此参数会在设置过程中强制改为off。

参数类型:布尔型

参数单位:

取值范围:

  • on:表示CN和DN之间连接为逻辑链接,使用libcomm组件。
  • off:表示CN和DN之间连接为物理连接,使用libpq组件。

默认值:off

设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。

设置建议:推荐使用默认值。

设置不当的风险与影响:该参数开启时,CN和DN之间会使用逻辑连接用于解决socket数量上限瓶颈,逻辑连接通信库会有性能开销。

COMM_IPC

参数说明通信性能问题定位开关,该参数设置是否打印通信各个节点的报文收发情况。

参数类型:布尔型

参数单位:

取值范围
  • on:表示打开报文收发统计日志。
  • off:表示关闭报文收发统计日志。

默认值off

设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。

说明:
set logging_module='on(COMM_IPC)';   --打开
set logging_module='off(COMM_IPC)';   --关闭
show logging_module;   --查看设置结果

设置建议:设置为on时,打印日志量较大,会增加额外的overhead并降低数据库性能,建议仅在调试时打开,调试完后及时关闭。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

COMM_PARAM

参数说明通信性能问题定位开关,该参数设置是否打印节点通信过程中session参数设置情况。

参数类型:布尔型

参数单位:

取值范围
  • on:表示打开连接的session参数设置日志。
  • off:表示关闭连接的session参数设置日志。

默认值off

设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。

说明:
set logging_module='on(COMM_PARAM)';   --打开
set logging_module='off(COMM_PARAM)';   --关闭
show logging_module;   --查看设置结果

设置建议:设置为on时,打印日志量较大,会增加额外的overhead并降低数据库性能,建议仅在调试时打开,调试完后及时关闭。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

我们使用cookie来确保您的高速浏览体验。继续浏览本站,即表示您同意我们使用cookie。 详情

文档反馈

文档反馈

意见反馈

0/500

标记内容

同时提交标记内容