我正在尝试在DB连接关闭时抛出一个异常,以便在连接关闭时POST请求可以立即返回。目前,Tomcat只是让它保持打开状态,并收集大约25分钟的日志数据。
我测试的方法是使用Java中的以下SQL代码:
WAITFOR DELAY '00:00:20';SELECT TOP(1) * FROM USER;"
我在Tomcat配置中使用了以下属性:
abandonWhenPercentageFull = 0 //Close connections as soon as timed out.
removeAbandonedTimeout = 10 //Abandon connections after 10s.
removeAbandoned = true
我试图实现的是让我的Java代码在10秒后抛出一个异常,这样关闭或重置的连接就不会占用连接太长时间。
我尝试过使用QueryTimeoutInterceptor,它也与Java相当,但似乎没有什么帮助。我使用的是最新的SQL Server驱动程序。
发布于 2021-08-31 12:01:41
如果你使用的是连接池(你应该这样做),那么在它返回后一段时间内它不会关闭。我的建议是在将数据插入数据库/缓存之前,将数据返回或处理分开
https://stackoverflow.com/questions/69003239
复制相似问题