Мы используем drools 6.3.0 и внедрили наш kiemodule в качестве развертываемого артефакта maven (kjar).Наше приложение использует этот модуль kiemodule и работает в режиме Wildfly-10.
В производстве более новая версия kiemodule автоматически обнаруживается и загружается в приложение программой kieScanner, которая запускается через равные промежутки времени.
Еслисканер видит новую версию модуля kiemodule, он загружает его на лету и во время выполнения.
Это очень крутая функциональность, но недавно мы обнаружили, что каждый раз, когда загружается новый ZipKieModule, старый ZipKieModule остается в куче и не обрабатывается GC!
Это означает, что если мы не перезапускаем серверы и не внедряем много новых модулей KieModules, мы подвержены исключениям нехватки памяти, так как каждое обновление kiemodule потребляет ок.150мб в куче.
Может кто-нибудь указать мне правильное направление, как проанализировать, почему эти ZipKieModukles не gc'ed?
Я приложил скриншот к этому сообщению, который показывает отчет EclipseАнализатор памяти (MAT, http://www.eclipse.org/mat/downloads.php) создан, который четко указывает, что 6 экземпляров ZipKieModule засоряют кучу и подозревают на утечку памяти:
Надеюсь, кто-нибудь может помочь:)