假设我预计每秒大约有 100 个请求,每个请求应该花费 1 到 3 秒之间的任何时间(在完美世界中)。
我会创建一个包含 300 个连接的池吗?或者稍高一些以补偿潜在的峰值?
最佳答案
这取决于到达事件的分布。 Queuing theory可以给你一个公式(对于给定的分布)你需要多少连接,这样失败的概率(在你的情况下没有空闲连接)将不超过一定百分比。
你可能想看看these notes (第 17 页)它给了你一些公式,比如你有 n 个请求同时被服务的概率或者你有一个非空队列(你想避免的状态)
关于database - 如何计算数据库连接池的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1800340/