2012-07-10 10 views
5

Cercando di ridurre il tempo di avvio delle mie istanze ho attraversato la scansione del classpath taglib.Disabilita la scansione taglib nel motore dell'app google (Jetty)

La mia applicazione ha 50 MB di barattoli. La scansione del tld richiede il 20% del tempo di avvio.

Yourkit capture of the startup time

C'è un modo per disattivare questo? Io uso solo librerie standard JSTL che sono già incluse (gae doc for jsp)

Vorrei disabilitare anche la precompilazione JSP.

+0

hai trovato la risposta er? la risposta proposta non funziona su Appengine. –

+0

Che cosa ha funzionato per Rafael sta rinominando i suoi JAR per abbinare il modello predefinito NoTLDJarPattern del web.xml predefinito di AppEngine: http://stackoverflow.com/a/28203683/180740 –

risposta

0

Si può facilmente disabilitare precompilazione, appena messo riga successiva nel file di distribuzione descrittore web.xml: App-Engine doc here.

<precompilation-enabled>false</precompilation-enabled> 
+0

che già e non funzionava, la precompilazione di –

+0

deve essere abilitata, ovvero compilare JSP al momento della distribuzione, non al momento dell'inizializzazione di istanza, ed è ciò che vogliamo –

4

ho guardato nel codice sorgente di TagLibConfiguration http://javasourcecode.org/html/open-source/jetty/jetty-6.1.26/org/mortbay/jetty/webapp/TagLibConfiguration.java.html#line.134 e ha scoperto che rispetta un parametro NoTLDJarPattern

Il parametro NoTLDJarPattern è configurato in web.xml per ridurre i tempi di scansione:

<context-param> 
    <param-name>org.mortbay.jetty.webapp.NoTLDJarPattern</param-name> 
    <param-value>test.jar|prefix-.*\.jar</param-value> 
</context-param> 
+0

Vorrei eseguire il debug di questo. Come posso trovare quale versione esatta del jetty usa gae 1.7.3? –

+0

Scusa non ho idea, a proposito di quale strumento usi per produrre quello screenshot? –

+0

Io uso il profiler yourkit –