おなじみの古い問題ですが、一度だけ解決したいと思います。次の JVM フラグを設定しました。
-XX:+CMSClassUnloadingEnabled
-XX:+CMSPermGenSweepingEnabled -Dorg.apache.catalina.loader.WebappClassLoader.ENABLE_CLEAR_REFERENCES=true
しかし、permgen の使用量は、デプロイメント サイクルごとに 50MB 程度増加しています。Tomcat マネージャー アプリケーションを使用してリモートでデプロイしており、Grails は運用モードになっています。
いっぱいになるkill -9
と、必要です!
JRockit を使ってみようと思うかもしれませんが、今は選択肢ではありません。コンテナ全体を時々バウンスしなければならないことは、実稼働環境では受け入れられません。