【问题标题】:When to use connection pooling or single connection?何时使用连接池或单连接?
【发布时间】:2014-01-27 00:15:56
【问题描述】:

假设场景:

我有一个数据库服务器,它的 RAM/CPU 比其当前系统可能使用的要多得多。将应用程序服务器连接到它,我会使用池来获得更好的性能,以使用每个执行较小的多个连接,还是使用较大执行的单个连接?

更重要的是,为什么?我很难找到任何参考资料来拉我的一种或另一种方式。

【问题讨论】:

    标签: database database-connection


    【解决方案1】:

    出于几个原因,我总是投票支持连接池。

    • 池层将处理故障并在您需要时获取工作连接
    • 您可以同时使用不同的连接同时处理多个请求。单个连接通常会阻塞和排队对数据库的请求
    • 建立与数据库的连接成本很高 - 池可以根据需要在前端和后台执行此操作

    this answer 也有一个方便的讨论。

    【讨论】:

    • 但是如果应用程序服务器始终保持与数据库服务器的连接,连接的好处不会大部分消失吗?
    • 如何保证没有网络故障?另外,它仍然没有解决并发请求的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-08
    • 2014-11-12
    • 1970-01-01
    • 1970-01-01
    • 2012-07-03
    • 1970-01-01
    相关资源
    最近更新 更多