暂无图片
暂无图片
3
暂无图片
暂无图片
暂无图片

openGauss线程池相关参数

原创 ysl 2021-07-27
2743

一、两个线程池相关参数

enable_thread_pool

参数说明:控制是否使用线程池功能。该参数属于POSTMASTER类型参数,需要重启生效
取值范围:布尔型
• on表示开启线程池功能。
• off表示不开启线程池功能。
默认值:off

thread_pool_attr

参数说明:用于控制线程池功能的详细属性,该参数仅在enable_thread_pool打开后生效,仅sysadmin用户可以访问。该参数属于POSTMASTER类型参数,需要重启生效
取值范围:字符串,长度大于0
该参数分为3个部分,'thread_num, group_num, cpubind_info',这3个部分的具体含义如下:
• thread_num:线程池中的线程总数,取值范围是0~4096。其中0的含义是数据库根据系统CPU core的数量来自动配置线程池的线程数,如果参数值大于0,线程池中的线程数等于thread_num。
• group_num:线程池中的线程分组个数,取值范围是0~64。其中0的含义是数据库根据系统NUMA组的个数来自动配置线程池的线程分组个数,如果参数值大于0,线程池中的线程组个数等于group_num。
• cpubind_info:线程池是否绑核的配置参数。

可选择的配置方式有集中:
1. '(nobind)' ,线程不做绑核;
2. '(allbind)',利用当前系统所有能查询到的CPU core做线程绑核;
3. '(nodebind: 1, 2)',利用NUMA组1,2中的CPU core进行绑核;
4. '(cpubind: 0-30)',利用0-30号CPU core进行绑核。该参数不区分大小写。
默认值:'16, 2, (nobind)'

二、线程池开启关闭操作

-------------------------------------打开线程池

1.打开线程池方法:
(如下gs_guc命令批量修改整个集群内所有节点的参数)
gs_guc set –N all –I all –c "enable_thread_pool=on"
gs_guc set –N all –I all –c "thread_pool_attr='240,2,(allbind)'"
 
2.重启数据库
gs_om -t restart
 
3.确认连接池已经打开
gsql -p 26000 postgres -c "show all"|grep thread_pool

--------------------------------关闭线程池

1.关闭并恢复默认值
gs_guc set –N all –I all –c "enable_thread_pool=off"
gs_guc set –N all –I all –c "thread_pool_attr='16,2,(nobind)'"

2.重启数据库
gs_om -t restart

3.确认连接池已经关闭
gsql -p 26000 postgres -c "show all"|grep thread_pool
最后修改时间:2021-07-30 00:05:58
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论