数据库连接池注意事项

注意:

1.数据库连接受限于操作系统的的文件描述符(file Descriptor ,fd) ,源于tcp连接

2.单个进程默认1024个fd,可适当调整,但是会消耗性能,有降低应用吞吐率的风险。

3.一般可以把连接池的最大连接数设置在30-50左右。一味的加大连接数是治标不治本的做法,通常是因为出现的很慢的SQL,需要创建索引以及优化SQL语句,优化数据模型或应用逻辑的设计。 尽量避免秒级的SQL,保持在100ms内。

常见优化方案

1.建立高效合适的索引

2.排查连接资源是否显式关闭(特别注意流式计算或Threadlocal中使用数据库连接的地方)

3.合并短的请求

4.合理拆分多个表join的SQL,尽量避免超过3个表的join,会产生巨量的笛卡尔积,另外确保关联的字段有索引。

5.临时表的使用

6.应用层优化。数据结构,逻辑的调整,并发多线程的改造等

7.考虑使用其他数据库。不同的业务场景需要可能会产生数据量不在一个量级上,为了满足性能问题,可以考虑使用nosql。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值