Java uygulama sunucularında yeniden yükleme (deploy) problemine çözüm önerisi

Tomcat, Jboss, Glassfish gibi Java uygulama sunucularında uygulamanızı çalışan sunucuda tekrar yüklerseniz her zaman PermgenSpace hatası alırsınız. Bu gıcık hatadan kurtulmak amacıyla çok araştırıp şu parametrelere ulaşmıştım:

-XX:MaxPermSize=128m
-XX:+CMSClassUnloadingEnabled
-XX:+UseConcMarkSweepGC

Bu parametreler yeniden yükleme sonrası Permgen hatası almanıza engel oluyor ancak bu seferde transaction hataları alıyorsunuz. Varolan bağlantılar patladığından başarılı bir deploy işlemi olmamış oluyor. Oysa az evvel öğrendiğim (mysql için) bir datasource parametresi bu olayı tamamlıyor gibi görünüyor:

<valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name>

Bunun yerine bağlantı aktif mi diye sql yazabileceğimiz bir alternatifi varmış onu da öğrenince yazıcam.

Leave a Reply