数据库连接池的链接什么时候关闭

如果在wait_timeout秒期间内,数据库连接(java.sql.Connection)一直处于等待状态,mysql就将该连接关闭。这时Java应用的连接池仍然合法地持有该连接的引用。数据库重启或数据库空闲连接超过设置的最大timemout时间导致数据库会强行断开已有的链接,就会报这个异常。

数据库重启或数据库空闲连接超过设置的最大timemout时间导致数据库会强行断开已有的链接,就会报这个异常。

如果在wait_timeout秒期间内,数据库连接(java.sql.Connection)一直处于等待状态,mysql就将该连接关闭。这时,你的Java应用的连接池仍然合法地持有该连接的引用。当用该连接来进行数据库操作时,就会产生上述错误。一般mysql自身连接的等待时间(wait_timeout)缺省为8小时,或者通过命令参数查看

只要是进程关了,所有资源最终会释放。只不过如果客户端不主动关闭,服务器可能花很长时间才能侦测到连接断了—服务器是依靠超时做这个事情的。

一般db连接池的设计都会有test on idle,test on borrow的机制。就是即便你不用db,只是连着,也会定时向服务器发select 1这样的指令,服务器返回后服务器和客户端双方就都会知道彼此还在。这样服务器就可以把链接空闲最大时间设的比较短。即便双方真的断开了,客户端test  on borrow失败后也可以直接重连,新建一个连接。

但如果你是直接连db,test机制重连机制可能需要自己搞。为了尽量维持链接,服务器需要把超时设长。这就意味着客户端直接关掉,服务器端要等到比较长的时间才能释放链接。如果触及到服务器限制最大链接数,新链接就建立不了。

延伸阅读:

什么是数据库?

数据库是存放数据的仓库。它的存储空间很大,可以存放百万条、千万条、上亿条数据。但是数据库并不是随意地将数据进行存放,是有一定的规则的,否则查询的效率会很低。当今世界是一个充满着数据的互联网世界,充斥着大量的数据。即这个互联网世界就是数据世界。数据的来源有很多,比如出行记录、消费记录、浏览的网页、发送的消息等等。除了文本类型的数据,图像、音乐、声音都是数据。

数据库管理系统是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。数据库管理系统可以依据它所支持的数据库模型来作分类,例如关系式、XML;或依据所支持的计算机类型来作分类,例如服务器群集、移动电话;或依据所用查询语言来作分类,例如SQL、XQuery;或依据性能冲量重点来作分类,例如最大规模、最高运行速度;亦或其他的分类方式。不论使用哪种分类方式,一些DBMS能够跨类别,例如,同时支持多种查询语言。

文章标题:数据库连接池的链接什么时候关闭,发布者:Flawy,转载请注明出处:https://worktile.com/kb/p/53217

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
FlawyFlawy认证作者
上一篇 2023年5月29日
下一篇 2023年5月29日

相关推荐

  • 为什么vscode运行不出网页

    VSCode运行不出网页可能的原因包括:插件缺失、配置错误、代码问题、路径问题、缺少必要的文件、浏览器兼容性问题、防火墙或网络设置等。其中,插件缺失是最常见的原因,Visual Studio Code (VSCode) 本身是一个强大的代码编辑器,但并不自带网页运行环境,因此需要安装如Live Se…

    2024年4月3日
    20400
  • 为什么vscode运行这么慢

    Visual Studio Code (VSCode) 运行缓慢可能是由于多个因素导致的,主要包括大量资源占用、扩展插件影响、文件监控数量过大、编辑器设置不当、硬件配置低。其中,扩展插件影响是最常见的原因之一。VSCode 扩展插件极大地增强了编辑器的功能,但同时也可能消耗大量系统资源。某些插件可能…

    2024年4月3日
    14000
  • oa系统推荐

    OA系统推荐的关键要素包含1、功能对应性、2、用户友好度、3、定制化与可扩展性、4、安全性与稳定性、5、技术支持与服务质量。其中,功能对应性是决定性因素,确保选取的系统能够满足机构的日常运行需求。 对于功能对应性而言,以深刻了解企业具体需求为先导,强调选取的OA(Office Automation办…

    2024年1月12日
    20000
  • 如何实现项目目标成本管理

    实现项目目标成本管理的核心方法包括成本估算、成本预算、成本控制。成本估算是此过程中的关键一步,它为项目目标成本管理奠定了基础。详细来说,成本估算涉及到对项目完成所需各种资源的成本进行详尽的预测。这不仅包括直接成本,如人力、材料费用,还包括间接成本,如管理费用和设备折旧。精确的成本估算能够为项目的费用…

    2024年4月10日
    11000
  • 产品研发与产品管理

    产品研发及产品管理之间存在紧密联系,1、产品研发指新产品从概念产生到市场推出的整个过程;2、产品管理则着眼于产品生命周期内的各项管理任务,确保产品符合市场需求、维持竞争力。产品研发不仅仅依赖于技术革新,同样涉及市场调研、用户需求分析等,而产品管理则需在产品推向市场后不断进行优化、升级与维护,两者相辅…

    2024年1月10日
    24000
  • 项目经理现场如何管理

    项目经理现场管理是确保项目顺利进行的关键环节。有效的现场管理需要 组织规划、沟通协调、质量控制、风险管理 等多方面的能力。组织规划是现场管理的核心,涉及到资源分配、时间管理以及任务分解等方面。通过准确的组织规划,可以确保工作环节的紧密衔接,预防潜在的问题,并促进项目按期完成。 现场项目经理的组织规划…

    2024年4月10日
    5600
  • 如何通过OKR提升团队的目标导向性

    OKR(Objectives and Key Results)方法论能显著提高团队的目标导向性。1、设定明确和挑战性的目标 给团队明确方向并激励向更高标准努力。2、确保关键结果的可度量性 使团队成果可衡量、易跟踪。3、强化透明度和责任感 通过共享目标和结果,促进团队合作和个人责任。4、持续的进度监督…

    2023年12月8日
    36900
  • 软件或互联网项目中的风险管理是什么

    软件或互联网项目中的风险管理是项目管理人用以降低风险的消极结果的决策过程,通过风险识别、风险估测、风险评价,并在此基础上选择与优化组合各种风险管理技术,对风险实施有效控制和妥善处理风险所致损失的后果,从而以最小的成本收获最大的安全保障。 一、软件或互联网项目中的风险管理含义 软件或互联网项目中的风险…

    2023年1月1日
    72800
  • devops为什么要构建服务

    为什么DevOps必须构建服务 DevOps,集开发与运维于一体的一种先进方法论,追求软件开发、技术运维与质量保障的高度协同和快速迭代。在这一框架下,构建服务不仅是必要性的体现,也是高效性和创新性的保障。1、加快产品上市时间2、提高软件质量3、促进团队协作4、保证持续交付与集成的实现。其中,提高软件…

    2024年3月26日
    6500
  • plc编程入门先学什么

    PLC编程入门先学什么? 在PLC编程入门中,首先应该学习的是:1、PLC基础原理。2、了解PLC硬件组成、3、学习梯形图逻辑编程、4、掌握基础指令及其应用、5、实践项目案例。对于这些要点,PLC基础原理是不可或缺的。掌握了PLC的基础原理,就能理解PLC的工作方式和编程逻辑,这为之后的深入学习打下…

    2024年4月25日
    500

发表回复

登录后才能评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部