0
在我每次重新部署應用程序時,都會保留舊的webclassloader,因爲存在由休眠啓動的稱爲Timer-0的阻塞線程。 我試着用YourKit分析堆轉儲,但仍有幾個thousend類仍在加載,我很難弄清楚什麼是阻塞類加載器。清除Tomcat中Grails應用程序的取消部署
這給我留下了幾個問題:
如何查找類加載器無法卸載的原因是什麼?
是否有最佳做法來確保在不重新啓動容器的情況下完全卸載所有內容?
在此先感謝!
UPDATE
樣品數據源:
dataSource {
pooled = true
driverClassName = "org.postgresql.Driver"
dialect = "org.hibernate.dialect.PostgreSQLDialect"
username = "xx"
password = "xx"
configClass = DdlFilterConfiguration
properties {
maxActive = 250
maxIdle = 25
minIdle = 1
initialSize = 10
maxWait = 10000
validationQuery = "select 1 "
validationQueryTimeout = 3
validationInterval = 15000
testOnReturn = true
testWhileIdle = true
testOnBorrow = true
minEvictableIdleTimeMillis = 60000
timeBetweenEvictionRunsMillis = 5000
}
}
不可以,重新啓動容器。 :/ –
我已經使用Tomcat 7和Grails成功完成了並行部署。這就像沒有任何停機時間的重新部署。 – Joe
你如何做你的數據庫連接池? – Joe