详情页标题前

阿里云RDS数据库并发控制(pg_concurrency_control)-云淘科技

详情页1

RDS PostgreSQL提供pg_concurrency_control插件,用于对SQL进行并发控制

前提条件

RDS PostgreSQL实例版本为PostgreSQL 10或11。

参数说明

参数 默认值 说明
pg_concurrency_control.query_concurrency 0 设置Select类型SQL并发控制的排队个数限制。取值范围为0~1024,默认值为0,表示关闭Select类型SQL并发控制。
pg_concurrency_control.bigquery_concurrency 0 设置慢查询类型SQL并发控制的排队个数限制。取值范围为0~1024,默认值为0,表示关闭慢查询类型SQL并发控制。

您可以使用hint "/*+bigsql*/"的方式来指定一个请求为慢查询。例如:

/*+bigsql*/select * from test;

此时select * from test;被认为是一个慢查询。

pg_concurrency_control.transaction_concurrency 0 设置事务块并发控制的排队个数限制。取值范围为0~1024,默认值为0,表示关闭事务块并发控制。
pg_concurrency_control.autocommit_concurrency 0 设置DML类型SQL并发控制的排队个数限制。取值范围为0~1024,默认值为0,表示关闭DML类型SQL并发控制。
pg_concurrency_control.control_timeout 1秒 设置Select类型SQL、DML类型SQL和事务块的并发控制排队等待时间。最小值为30毫秒(ms),最大值为3秒(s)。
pg_concurrency_control.bigsql_control_timeout 1秒 设置慢查询并发控制排队等待时间。最小值为30毫秒(ms),最大值为3秒(s)。
pg_concurrency_control.timeout_action TCC_break 设置Select类型SQL、DML类型SQL和事务块的并发控制等待超时后的行为。取值:

  • TCC_break:跳过等待继续执行。
  • TCC_rollback:超时后报错,事务回滚。
  • TCC_wait:超时后重置时间戳继续等待。
pg_concurrency_control.bigsql_timeout_action TCC_wait 设置慢查询并发控制等待超时后的行为。取值:

  • TCC_break:跳过等待继续执行。
  • TCC_rollback:超时后报错,事务回滚。
  • TCC_wait:超时后重置时间戳继续等待。

使用方法

  1. 使用如下命令创建插件:
    create extension pg_concurrency_control;
  2. 设置并发控制排队个数限制大于0,即开启插件排队功能。

    例如设置pg_concurrency_control.query_concurrency=10,即开启Select类型SQL并发控制功能。其余功能开启方式类似。

使用示例

对自定义SQL操作进行并发控制。

  1. 使用如下命令查看排队视图:
    select * from pg_concurrency_control_status();

    系统输出类似如下结果:

     autocommit_count | bigquery_count | query_count | transaction_count 
    ------------------+----------------+-------------+-------------------
                    0 |              0 |           0 |                 0 
    (1 row)
  2. 设置pg_concurrency_control.query_concurrency大于0,例如10。
  3. 执行慢查询语句:
    /*+ bigsql */ select pg_sleep(10);
  4. 再次查看排队视图:
    select * from pg_concurrency_control_status();

    系统输出类似如下结果:

     autocommit_count | bigquery_count | query_count | transaction_count 
    ------------------+----------------+-------------+-------------------
                    0 |              1 |           0 |                 0 
    (1 row)


    说明 慢查询执行完毕后,排队信息会自动清空。

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/156099.html

(0)
上一篇 2023年12月9日
下一篇 2023年12月9日
详情页2

相关推荐

  • 阿里云对象存储OSSPython服务器端加密-云淘科技

    OSS支持在服务器端对上传的数据进行加密编码(Server-Side Encryption)。上传数据时,OSS对收到的用户数据进行加密,然后再将得到的加密数据持久化保存下来;下载数据时,OSS自动对保存的加密数据进行解密并把原始数据返回给用户,并在返回的HTTP请求Header中,声明该数据进行了服务器端加密。 背景信息 OSS有如下两种服务器端加密方式:…

    阿里云对象存储 2023年12月10日
  • 阿里云对象存储OSS设置跨域规则后调用OSS时仍然报“No ‘Access-Control-Allow-Origin’”的错误-云淘科技

    问题描述 为了实现跨域访问,保证跨域数据传输的安全进行,在OSS控制台设置了跨域CORS规则后,通过SDK进行程序调用时报以下错误。 No ‘Access-Control-Allow-Origin’ header is present on the requested resource 问题原因 出现跨域问题的原因如下: 跨域CORS规则设置异常: 未正确设…

    2023年12月10日
  • 阿里云日志服务SLS消费组监控与告警-云淘科技

    您可以通过日志服务控制台查看日志消费的状态并设置告警。 前提条件 已开通服务日志中的重要日志。具体操作,请参见开通服务日志。背景信息一个消费组包含多个消费者,每个消费者消费Logstore中的一部分Shard。同一个消费组下面的消费者共同消费一个Logstore中的日志数据,消费者之间不会重复消费数据。 Shard数据模型可以简单理解为一个队列,新写入的数据…

    2023年12月10日
  • 阿里云对象存储OSS版本控制概述-云淘科技

    版本控制是针对存储空间(Bucket)级别的数据保护功能。开启版本控制后,针对数据的覆盖和删除操作将会以历史版本的形式保存下来。您在错误覆盖或者删除对象(Object)后,能够将Bucket中存储的Object恢复至任意时刻的历史版本。 使用场景 建议您在以下场景中使用版本控制,为您的数据安全提供更好的保障。 数据误删除 当前OSS不提供回收站功能。您删除O…

    阿里云对象存储 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云对象存储OSSTerraform简介-云淘科技

    Terraform 是一个开源的自动化的资源编排工具,支持多家云服务提供商。阿里云作为第三大云服务提供商,terraform-alicloud-provider 已经支持了超过 90 多个 Resource 和 Data Source,覆盖 20 多个服务和产品,吸引了越来越多的开发者加入到阿里云 Terraform 生态的建设中。 HashiCorp Te…

    阿里云对象存储 2023年12月10日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。