Ich habe eine kleine Webanwendung mit Guice, Jersey und EclipseLink konfiguriert und führe diese Anwendung während der Entwicklung auf Jetty (8.0.0.M1) aus. Es gibt etwa 10 (kleine) JPA-verwaltete Klassen (Entitäten und eingebettete Tabellen) und insgesamt etwa 20 Klassen.Anwendungsstart auf Jetty beschleunigen
Der erste Start dauert 15 Sekunden + 5 Sekunden für die ersten Anfragen. Es sieht so aus, als würde JPA die erste Anfrage bearbeiten, da ich die Tabellengenerierungsstrategie "create" aktiviert habe und bei der ersten Anfrage eine JPA-Ausgabe von Maven sehe.
Ein Nachladen dauert etwa 10 Sekunden und die erste Anforderung nach dem erneuten Laden dauert etwa 3 bis 4 Sekunden.
Sie denken vielleicht, dass die Startzeit nicht so schlecht ist, aber ich frage mich, ob ich den Start beschleunigen könnte, um flüssiger zu arbeiten wie mit Django. Irgendeine Idee für Start-Tuning?
Geht es Ihnen um die Startzeit an sich oder darum, dass der erste Benutzer die Startkosten bezahlen muss? Wenn es Letzteres ist, könnten Sie Ihre Anwendung beim Start an sich selbst senden lassen, um sie aufzuwärmen. Dann sieht der erste Benutzer eine normale Antwortzeit. –
Mein Problem ist die Startzeit während der Entwicklung. Neustarts sind in der Produktion relativ selten, daher würde ich akzeptieren, dass der erste Benutzer ein paar Sekunden warten muss. – deamon
Wenn Sie aufgrund von Codeänderungen neu starten (keine Schemaänderungen), versuchen Sie, Neustarts (fast) komplett mit JRebel (http://www.zeroturnaround.com/jrebel/) zu vermeiden. Es ist nicht kostenlos, aber es spart viel Zeit (ich bin auf keinen Fall mit ihnen verbunden). – DaGGeRRz