什么时候应该关闭数据库连接

时间:2017-11-24 21:35:30

标签: java mysql rest ormlite spark-java

我使用Spark创建了一个rest API。

我还使用 ormLite + mysql 数据库来存放持久数据库。

现在的问题是我何时应该关闭与数据库的连接?

或者我应该在每次请求后关闭连接吗?

这就是我连接数据库的方式:

JdbcConnectionSource connectionSource = JdbcConnectionSource(databaseUrl);

connectionSource.setUsername("myUsername");
connectionSource.setPassword("myPassword");

1 个答案:

答案 0 :(得分:0)

好的,所以实际上基于Gray's评论这是你用 Spark

的方式
JdbcPooledConnectionSource connectionSource = JdbcPooledConnectionSource(databasePath, username, password);

我正在做的是使用JdbcPooledConnectionSource而不是JdbcConnectionSource,因此我们不需要为每个请求或单个连接为所有请求创建新连接。

但这不是全部,我们需要一些额外的东西才能获得更好的性能:

connectionSource.setMaxConnectionsFree(10)
connectionSource.setMaxConnectionAgeMillis(20000)
connectionSource.setCheckConnectionsEveryMillis(5000)

通过这样做,您不需要自己关闭连接。

顺便说一句,如果你认为这个参数需要改变请告诉我;)