高并发pgbench测试报错:Resource temporarily unavailable

在CentOS 6.5 + PostgreSQL 9.3.4下运行一个高并发的pgbench测试,发现并发数超过一定数量(max_connections已经设成足够大了)的时候,执行会出错。

命令:
pgbench -n -r -c 250 -j 250 -T 2 -f update_smallrange.sql


错误消息:
Connection to database "" failed:
could not connect to server: Resource temporarily unavailable
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5433"?


但是从上面的“Resource temporarily unavailable”看不出是哪个资源出问题了。
经过调查,找到了下面一个链接
http://www.postgresql.org/message-id/20130617141622.GH5875@alap2.anarazel.de

原来是PG服务端的listen backlog(受内核参数somaxconn限制)不够用了,somaxconn的默认值是128,调大后,重启PG再测就OK了。

echo 256 > /proc/sys/net/core/somaxconn
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值