小编Usm*_*kil的帖子

为什么要减少MySQL中的wait_timeout配置参数?

问题

我正在开发一个使用 Apache Tomcat 中的连接池与 MySQL 进行通信的应用程序。我想知道为什么要使用比默认值 28,800 秒更小的wait_timeout ?我发现减少等待超时有很多缺点,但是有什么优点呢?

背景

参数wait_timeout定义为

服务器在关闭非交互式连接之前等待该连接上的活动的秒数。

问题

如果我将 wait_timeout 设置得太小,那么 MySQL 将终止我的 Web 应用程序正在使用的连接池中仍然有效的连接。在我的情况下,我是当前在任何时候使用该应用程序的唯一人,因此当我不测试它时,数据库连接自然会处于空闲状态。我可以通过简单地将 MySQL 上的 wait_timeout 延长到非常大的值来解决这个问题,这样即使我离开办公桌 2 周,池也永远不会返回死连接。

问题

  • 为什么有人想要更短的 wait_time?
  • 存储连接的开销有那么糟糕吗?
  • 尽管我了解连接池减轻了创建连接的开销,但将空闲连接保留在内存中是否是一个问题?

mysql jdbc waits

6
推荐指数
1
解决办法
2万
查看次数

标签 统计

jdbc ×1

mysql ×1

waits ×1