Java 销毁的jdbc连接数和释放回池的jdbc连接数之间有区别吗?

Java 销毁的jdbc连接数和释放回池的jdbc连接数之间有区别吗?,java,glassfish,connection,pool,Java,Glassfish,Connection,Pool,我在glassfish应用服务器中部署了一个web应用程序。我在glassfish中创建了一个连接池,并使用DataSource从中获取连接 在我的连接池中,我有以下设置: 初始池大小:25 最大池大小:500 池大小调整数量:2 当前客户端正在使用我的应用程序,在glassfish资源监视器中,我看到以下详细信息: 使用数量:118 数字灾难:3664 新公布的数字:391 NumConnFree:1 新建数量:3784 所需数量:509 如果有人能用数学解释一下上面的统计数字 我的问题是-当

我在glassfish应用服务器中部署了一个web应用程序。我在glassfish中创建了一个连接池,并使用
DataSource
从中获取连接

在我的连接池中,我有以下设置:
初始池大小:25
最大池大小:500
池大小调整数量:2

当前客户端正在使用我的应用程序,在glassfish资源监视器中,我看到以下详细信息:

使用数量:118
数字灾难:3664
新公布的数字:391
NumConnFree:1
新建数量:3784
所需数量:509

如果有人能用数学解释一下上面的统计数字

我的问题是-当我们在java中使用
.close()
关闭连接时,连接会被发送回池中。那么NumConnReleasednumconndestred之间有什么区别呢

谢谢

numconndestroyed-->自上次重置以来被破坏的物理连接数。 numconnreleased-->释放到池的逻辑连接数

物理连接-->实际的数据库连接

逻辑连接-->连接池管理器维护的池连接

上次重置-->刷新/重置连接池时,这通常会在重新部署应用程序时发生


因此,您可以看到区别在于,一个表示物理连接,而另一个表示逻辑连接。另一个区别是,一个显示自上次重置以来的计数,而另一个显示总计数。

您可以查看此NumConnUsed+numconndestried=NumConnCreated(整体处于物理连接中)&NumConnUsed(逻辑)+NumConnReleased(物理)=numconnequired(物理),但它们之间的核心区别是什么…除了逻辑和物理方面。谢谢gresdipllitude,但为什么这么多物理连接都是在不从池中获取连接的情况下进行的?@Mukund您的应用程序被重新部署了好几次,Numconndestried只跟踪自上次部署以来的连接计数,另一方面,numconnreleased正在跟踪自首次部署应用程序以来的连接。基本上,第一次将应用程序部署到容器时,numconndestroed应该始终等于numconnrelease.hmmm。。我猜你只是说了相反的话,因为如果numconndestried-->last deploy和numconnrelease-->first deploy,那么在我的应用程序中numconndestried>numconnrelease怎么可能呢?不是吗?