java连接池的maxIdle该如何配置

maxIdle值与maxActive值应配置的接近。 因为,当连接数超过maxIdle值后,刚刚使用完的连接(刚刚空闲下来)会立即被销毁,若maxIdle与maxActive相差较大,在高负载的系统中会导致频繁的创建、销毁连接,连接数在maxIdle与maxActive间快速频繁波动, 高负载系统的maxIdle值可以设置为与maxActive相同或设置为-1(-1表示不限制),让连接数量在minIdle与maxIdle间缓冲慢速波动。具体看下图

原文参考: http://elf8848.iteye.com/blog/1931778

       从上图做一个假设,当并发量达到最大,又突然空闲下来,那么空闲下来的瞬间增多,这个增多的量很容易大于maxIdle(允许的最大空闲连接) 那么按照上图它就会去销毁对象,但并发量又再次上来时候,又去频繁创建,而另一边又去频繁销毁,这显然不合理,连接数在maxIdle与maxActive间快速频繁波动,并且销毁的时间要比创建的时间长!!

至于具体多少合理取决于大家的具体应用场景,但是配置的原则是这样的:

1.如果是连接池命中率(即应用在获取连接时直接获得已经创建物理连接的比率)优先的应用。适合连接资源较充裕的环境,可以尽可能将maxIdle设置得更大一些,多数应用设置的大一些会更加安全。

2.如果是连接资源利用率(即被使用连接占的比率)优先的应用。适合那些连接资源紧张的环境。可以尽可能将maxIdle设置得更小一些,这样空闲连接能够得到更快的释放,保持一个较小的连接,但是设置的过小的话会导致连接池命中率非常低,弱化连接池的作用。

原文参考:https://blog.csdn.net/meitingbee/article/details/53127140?locationNum=5&fps=1

java连接池的maxIdle该如何配置相关推荐

  1. java 数据库连接池的maxIdle该如何配置(转载非我原创)备忘

    java连接池的maxIdle该如何配置 摘要:最近针对某系统做了次压力测试,在并发较高的时候暴露了一个maxIdle设置不合理的问题,特总结一下这次问题,并分析一下这个问题背后的原因. 问题现象 用 ...

  2. java连接池域名切换_java - 使用JDBC的连接池选项:DBCP与C3P0

    java - 使用JDBC的连接池选项:DBCP与C3P0 什么是可用于Java / JDBC的最佳连接池库? 我正在考虑2个主要候选人(免费/开源): Apache DBCP - [http://c ...

  3. java连接池详解与自定义es连接池

    目录 1 版本选择 2 依赖选择 3 使用commons-pool构造连接池 3.1 pom.xml 3.2 对象池类 GenericObjectPool普通对象池 GenericKeyedObjec ...

  4. java连接池 dbcp 样例_DBCP数据库连接池的简单使用

    0.DBCP简介 DBCP(DataBase connection pool)数据库连接池是 apache 上的一个Java连接池项目.DBCP通过连接池预先同数据库建立一些连接放在内存中(即连接池中 ...

  5. 四个常用的Java连接池

    C3P0.BoneCP.DBCP.Proxool是四个常用的Java连接池,根据环境需求和项目要求选取适当的线程池完成数据库相关操作. C3P0 是一个开放源代码的JDBC连接池,它在lib目录中与H ...

  6. 几个主流的Java连接池整理

    池(Pool)技术在一定程度上可以明显优化服务器应用程序的性能,提高程序执行效率和降低系统资源开销.这里所说的池是一种广义上的池,比如数据库连接池.线程池.内存池.对象池等.其中,对象池可以看成保存对 ...

  7. 几个主流的Java连接池

    要了解Java连接池我们先要了解数据库连接池(connection pool)的原理,Java连接池正是数据库连接池在Java上的应用.--我们知道,对于共享资源,有一个很著名的设计模式:资源池(Re ...

  8. Spring学习总结(12)——Druid连接池及监控在spring配置

    Druid连接池及监控在 spring 配置如下: <bean  id="dataSource" class="com.alibaba.druid.pool.Dru ...

  9. java 连接池配置_java数据库连接池配置的几种方式

    关于java数据库连接池配置的几种方式 今天遇到了关于数据源连接池配置的问题,发现有很多种方式可以配置,现总结如下,(已Mysql数据库为例) 一,Tomcat配置数据源: 方式一:在WebRoot下 ...

最新文章

  1. MySQL存储引擎类别
  2. UI_UITableView_搭建
  3. matplotlib.pyplot绘制函数图像希腊字母latex效果设置
  4. Android URLconnection
  5. 跨地域的VPC私网互通【高速通道案例】
  6. antdesign 柱状图_以Ant Design为例:看B端设计的基本套路
  7. eclipse下安装Tomcat
  8. 华文行楷字帖欣赏_田英章硬笔行书字帖欣赏,600个行书笔法演示,写好字的首选帖...
  9. SilverLight学习笔记--进一步学习Isolated Storage独立存储一(理论篇)
  10. Linux使用命令 笔记
  11. layui 表单样式无效
  12. VINS-Mono代码解读——视觉跟踪 feature_trackers
  13. 论“黄海和渤海开凿人工运河的分析”(最新)
  14. Linux系统到底是什么?
  15. Android音视频【三】硬解码播放H264
  16. 计算机技术前沿知识,计算机前沿技术综述_相关文章专题_写写帮文库
  17. 算法与数据结构实验题 10.23 寡人的难题
  18. Lua程序设计 | 字符串、表、函数与IO
  19. python 解决 0-1 二维背包问题
  20. 渝粤题库 陕西师范大学 《旅游法规》作业

热门文章

  1. 程序员必玩:盘点程序员不容错过的手机游戏
  2. 德国财长:德国新政府正在制定超300亿欧元的减税政策
  3. PC端微信多开bat脚本
  4. Dbutil框架简单介绍
  5. rsync 出现 chown 您的目录 failed: invalid argument(22)
  6. 娇滴滴的一朵花(Python实现)
  7. win10下hyper-v新建的虚拟机无法启动,提示虚拟监控程序未运行,什么原因?怎么解决?
  8. 百度网盘 倍速播放 插件 视频倍速播放(GreasyFork TemperMonkey油猴)
  9. Spring JDBC的原理与实现
  10. 如何从神品屋下载废柴道士2并放入kindle