Stiamo eseguendo un portale liferay su tomcat 6. Ciascun portlet è un'applicazione Web contenuta in modo che includa tutte le librerie richieste dal portlet stesso. Al momento disponiamo di oltre 30 portlet. Il risultato è che il permgen del nostro tomcat aumenta con ogni portlet che distribuiamo.Grande dimensione Permgen + impatto sulle prestazioni
Ora abbiamo due percorsi che possiamo seguire. Spostare alcune delle librerie che vengono utilizzate regolarmente da ciascuno dei nostri portlet nella libreria condivisa di tomcat. Questo includerebbe cose come primavera/ibernazione/cxf/.... per ridurre la nostra dimensione di permgen O sarebbe più semplice aumentare la dimensione di permgen.
Questa seconda opzione ci consentirebbe di mantenere ogni portlet come un'entità autonoma.
La domanda ora è: c'è un impatto negativo sulle prestazioni dall'aumento delle dimensioni del permgen? Al momento stiamo lavorando a 512 MB. Ho trovato poche informazioni a riguardo. Ma ho trovato alcuni post in cui le persone parlano di una dimensione permgen di 1024 MB senza problemi.
Non mi aspetto un PermGen da 1 GB per causare un problema. –
Domanda correlata: http://stackoverflow.com/q/9636328/1140748 –
Questo non risponde alla tua domanda, ma aggiunge un altro aspetto: considero la decisione di avere 1 portlet per plugin una limitazione artificiale. Con il numero di portlet che offri, scommetto che ci sono alcuni aspetti correlati in cui consiglierei di prendere in considerazione gli aspetti relativi al packaging. Questo si prenderà cura dei tuoi dolori e IMHO aumenterà la visione d'insieme dei tuoi plugin. –