我正在使用bonecp来处理与数据库的连接。这是我的测试配置。
config.setJdbcUrl("jdbc:mysql://192.168.1.104/" + DATABASE);
config.setUsername(USERNAME);
config.setPassword(PASSWD);
config.setMinConnectionsPerPartition(2);
config.setMaxConnectionsPerPartition(4);
config.setIdleMaxAge(30, TimeUnit.SECONDS);
config.setIdleConnectionTestPeriod(30, TimeUnit.SECONDS);
config.setConnectionTestStatement("SELECT 1");
config.setMaxConnectionAge(1, TimeUnit.MINUTES);
config.setPartitionCount(1);
在获取第 5 连接 getConnection HANGS 时从池中获取 4 个连接后,我正在尝试从池中获取连接,因为池已耗尽我不会关闭连接。但通过配置,bonecp 会在超时后关闭连接,但这种情况不会发生。
IdleMaxAge、MaxConnectionAge 和 IdleConnectionTestPeriod 参数有何用途?
使用
config.setCloseOpenStatements(true);
我也想知道为什么这些声明保持开放状态..
我是一名优秀的程序员,十分优秀!