spin lock 导致cpu 很高-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

spin lock 导致cpu 很高

管理贝贝 2016-07-14 15:45:08 1871

hi 您好。我们使用的是pg 9.3.5的版本,操作系统是centos7. 使用流复制做主备。
之前遇到了一个问题就是spin lock 导致cpu 很高。我简单描述一下我的疑问:

最早我们业务是直连pg 主库没有使用pgbouncer 主库连接数在400~500之间,业务繁忙时会出现spin lock 主库cpu很高,经常要重启业务。后来把所有只读的业务都迁移到了备库,结果备库也出现的spin lock 。上pg社区寻求帮组,他们建议我们降低连接数,所以在备库和主库都加了pgbouncer。备库还是会出现spin lock的问题。然后把一大部分的只读查询又迁移回了主库,spin lock的问题就没有出现了。所以是不是可以认为 pg流复制的备库的性能要比主库差呢?我看了部分流复制的官方文档,是不是因为在 读备库数据的时候,并且在读的表需要恢复,是不是会导致性能受到损失?

小编只是大自然的搬运工,本问答整理自阿里技术天团正在解答Docker技术难题

关系型数据库 Docker 容器
分享到
取消 提交回答
全部回答(1)
  • 管理贝贝
    2019-07-17 19:56:24

    1 的确PG流复制在备库需要兼顾库恢复物理日志和只读查询。有很多参数控制这方面,帮助您协调备库上的只读查询。参考下面链接的 Hot Standby Parameter Reference 部分
    参考 https://www.postgresql.org/docs/9.4/static/hot-standby.html

    2 spin lock 的问题可能需要根据业务场景优化,如果可以请详细描述下。

    0 0
云原生
使用钉钉扫一扫加入圈子
+ 订阅

云原生时代,是开发者最好的时代

推荐文章
相似问题