我使用Spark创建了一个rest API。
我还使用 ormLite + mysql 数据库来存放持久数据库。
现在的问题是我何时应该关闭与数据库的连接?
或者我应该在每次请求后关闭连接吗?
这就是我连接数据库的方式:
JdbcConnectionSource connectionSource = JdbcConnectionSource(databaseUrl);
connectionSource.setUsername("myUsername");
connectionSource.setPassword("myPassword");
答案 0 :(得分:0)
好的,所以实际上基于Gray's评论这是你用 Spark :
的方式JdbcPooledConnectionSource connectionSource = JdbcPooledConnectionSource(databasePath, username, password);
我正在做的是使用JdbcPooledConnectionSource
而不是JdbcConnectionSource
,因此我们不需要为每个请求或单个连接为所有请求创建新连接。
但这不是全部,我们需要一些额外的东西才能获得更好的性能:
connectionSource.setMaxConnectionsFree(10)
connectionSource.setMaxConnectionAgeMillis(20000)
connectionSource.setCheckConnectionsEveryMillis(5000)
通过这样做,您不需要自己关闭连接。
顺便说一句,如果你认为这个参数需要改变请告诉我;)