线程池和数据库连接池设定合适 的大小

本文翻译自 https://github.com/brettwooldridge/HikariCP/wiki/About-Pool-Sizing

翻译时可能会有不精准的地方,此处仅供参考,望注意!!!

配置连接池是开发人员经常出错的问题。在配置池时需要理解的原则有几个,可能是反直觉的。

10,000个同时前端用户

想象一下,你有一个网站虽然可能不是Facebook规模,但仍然经常有10,000个用户同时发出数据库请求 - 每秒约占20,000个交易。你的连接池应该有多大?您可能会感到惊讶的是,问题不是多大而是多么小!

观看来自Oracle真实世界表演小组的这段简短视频,进行大开眼界演示(约10分钟):

{Spoiler Alert}如果您没有观看视频。哦加油!观看它然后回到这里。

您可以从视频中看到,在没有任何其他更改的情况下,单独减少连接池大小会将应用程序的响应时间从大约100毫秒减少到大约2毫秒 - 超过50倍的改进。

但为什么?

我们似乎最近在计算的其他部分已经理解,越少越好。为什么只有4个线程的nginx Web服务器可以大大超过100个进程的Apache Web服务器?如果你回想一下计算机科学101,这不是很明显吗?

即使是具有一个CPU内核的计算机也可以“同时”支

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值