当前位置:  开发笔记 > 运维 > 正文

你如何设置连接池?

如何解决《你如何设置连接池?》经验,为你挑选了1个好方法。

设置游泳池的最佳方法是: -

    你什么时候建立联系?

    你什么时候关闭连接,你会关闭它们吗?

    你测试连接是否仍然很好.何时以及如何?

    你怎么知道最大连接数的好数字?

    您有什么样的监控来确保池的用户表现良好?你能阻止一段不好的代码取出所有东西吗?

    您是否已编写自己的池或使用第三方库?

我认为这是一个不可知的问题,但欢迎对特定数据库/语言的"特征"发表评论.例如,在某些数据库上连接可能比其他数据库更慢或更昂贵.

为了澄清,我不打算从头开始编写池,这个问题更多的是关于如何配置实现池的现有库.



1> dacracot..:

我在Java中为数据库编写了一个连接池,它只是一个设计模式,而不是一个公共库.现在我使用Tomcat内置的那个.

我使用一个线程来监视池的几个方面以及控制其行为的几个参数......

    minimumInPool ="3"......前三个是在发布时创建的.游泳池永远不会低于三.

    maximumIdleTimeBeforeRemoval ="60"...如果连接空闲一小时,则将其删除并创建一个新连接.空闲时间可能意味着池中只有至少三个.

    maximumInUseTimeBeforeRemoval ="30"...如果一个给定的连接已被检出超过30分钟,那么可能是错误的.回想一下,并终止连接.

    maximumTimeBeforeRemoval ="60"...如果超过60分钟,请将其删除.

    maximumUsageBeforeRemoval ="1000"...如果已经超过1000次检出,则将其删除.

    monitorInterval ="15"...每15分钟检查一次上述参数.

几年来,这对我很有帮助.我见过的最高的游泳池是疯狂偷看的151个连接.通常情况下,在大量使用期间,游泳池大约有十几个,并且在凌晨时间闲置至最少三个.

我使用了Oracle的JDBC瘦驱动程序并连接到Oracle数据库.

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有