2010-03-08 6 views
5

App Engine verwendet einen "Precompilation" -Prozess mit dem Java-Bytecode einer App, um die Leistung der App in der Java-Laufzeitumgebung zu verbessern. Vorkompilierter Code funktioniert identisch mit dem ursprünglichen Bytecode.Wie kompiliert Google App Engine Java vor?

Gibt es detaillierte Informationen, was das bedeutet?

Antwort

4

Ich fand diese in einem googlegroups message:

Ja, Vorkompilierung die Zeit reduziert, um eine Anwendung zu laden. Dadurch profitieren Sie von bei Ihrer ersten Anforderung nach einer Bereitstellung, nachdem Sie die Anwendung durchlaufen haben oder mehr Anwendungsinstanzen erstellt wurden, um mit Ihrer Auslastung zu skalieren. Sie sehen bis zu 30% verbesserte Ladezeit bei Ihrer ersten Anfrage. Pre-Kompilierung funktioniert, indem ein Bit der Klasse Ladearbeiten vor der Zeit in die App Engine-Umgebung zu tun, bevor die Anforderung in.

kommt So ist es, dass Precompilieren Zeit über die Optimierung Last scheint, nicht die Leistung Laufzeit .

+1

"ein bisschen Klassenladearbeit vor der Zeit zu tun". Ich frage mich, was das bedeutet ... – Thilo

+0

Nun, es * könnte * bedeuten, dass die Vorkompilierung die von der Anwendung referenzierten Bibliotheksklassen in die JAR-Datei der Anwendung (oder gleichwertig) zieht. –

+1

Ich denke, es bedeutet Klassen-Datenfreigabe http://java.sun.com/j2se/1.5.0/docs/guide/vm/class-data-sharing.html –