Sha*_*shi 6 java database hibernate connection-pooling c3p0
我在我的应用程序中使用hibernate 3.2.2.对于连接池,我们使用的是c3p0 0.9.1.我在View模式中使用Generic DAO Pattern和Open Session来进行数据库操作.
我们正在开发现有网站的新网站.现在,在现有应用程序中,访问次数为50万次.我对c3p0配置感到困惑.在什么基准,我决定打开连接的否定.最大连接,最小连接,空闲时间,超时等....
您首先需要确定如果请求传入且没有可用连接为其提供服务,池将执行什么操作。它会抛出异常吗?返回空值?阻塞直到另一个连接返回到池中?
一旦您知道超出容量时会发生什么,请考虑如何在调用代码中处理这种情况,以及在什么情况下可以接受这种情况发生。在某个时刻,随着连接数量的增加,您将不得不开始拒绝服务某些请求,但只有您可以决定那个点是什么。实际点取决于很多因素,包括诸如
等等等等。
希望根据上面的内容,您应该能够得出需要能够同时处理的请求数量(如果存在不同类型的请求,您可能也需要考虑这一点)。然后,只需查看传入请求如何获取和使用连接、推理和分析,直到发现池中维持目标连接速率所需的连接数。
不要忘记考虑诸如非请求线程(例如工作池)从同一个池获取自己的连接(池需要更大)之类的事情,以及仅在执行过程中保留连接的请求(池可以更小)。
| 归档时间: |
|
| 查看次数: |
1827 次 |
| 最近记录: |