Frage

Vor kurzem begann ich mit einer JBoss SEAM Web-Anwendung entwickeln (Auktions-Website). Bisher hat sie entlang großen kommen, aber vor kurzem laufe ich in lange Ladezeiten (vor allem auf den Ressourcen wie Javascripts / CSS-Dateien, sondern auch die Seiten selbst sind langsam).

Sie haben einen Profiler für JBoss Seam / AS, wo ich sehen kann, welche Klassen im Speicher sind, etc?

Was ist der Grund, warum die Ladezeiten auf der CSS / JS / Bilddateien hoch sein könnte? Aufgrund der Entwicklung Gründe aktiviert habe ich die Web-Cache-Filter durch Naht noch angeboten. Dies sind meine VM Argumente


-Drebel.log=true -noverify -javaagent:"C:\Program Files\ZeroTurnaround\JRebel\jrebel.jar" -Drebel.hibernate_plugin=true -Drebel.seam_plugin=true -Drebel.jboss_plugin=true -Drebel.allow_bytecode_proxy=true  -Dprogram.name="JBoss 5.1 Runtime" -Djava.endorsed.dirs="C:\Java\jboss\as5.0\lib\endorsed" -Dproject.home="C:\Java\jboss\as5.0\server\default\deploy\botenveiling.war" -Xms1024m -Xmx1024m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=512m -Xverify:none

Ich habe einige Tweaks (einige der Standard-Anwendungen entfernt): http: // www .jaysonjc.com / Programmierung / how-to-configure-jboss-as-Produktion-settings-und-Tuning-tips.html

Ich bin mit WAR-Explosion auf meine Dateien auf dem Server bereitstellen.

Setup:

  • JBoss Application Server 5.1
  • JBoss SEAM 2.2.2CR1
  • JRebel
  • PrimeFaces 1.1

System

  • Intel Core 2 Duo E6550
  • 4 GB Speicher
War es hilfreich?

Lösung

Ich schrieb eine Blog-Post, wo ich eine Interceptor zeigte, daß jeden Methodenaufruf messen kann, dass Ihre Komponenten verwenden.

Auf diese Weise können die Methoden verwenden, lange Zeit sehen können, und Fehler in Ihrem Code zu finden. Werfen Sie einen Blick hier und blättern Sie zu dem zweiten Beispiel nach unten.

Sie Ausgabe wie diese:

  284.94 ms   1   FooBean.getRandomDroplets()
  284.56 ms   1   GahBean.getRandomDroplets()
  201.60 ms   2   SohBean.searchRatedDoodlesWithinHead()
  185.94 ms   1   FroBean.doSearchPopular()
  157.63 ms   1   FroBean.doSearchRecent()
  42.34 ms   1   FooBean.fetchMostRecentYodel()
  41.94 ms   1   GahBean.getMostRecentYodel()
  15.89 ms   1   FooBean.getNoOfYodels()
  15.00 ms   1   GahBean.getNoOfYodels()
  9.14 ms   1   SohBean.mainYodels()
  1.11 ms   2   SohBean.trackHoorayEvent()
  0.32 ms   1   FroBean.reset()
  0.22 ms  43   NohBean.thumbPicture()
  0.03 ms  18   FooBean.getMostRecentYodels()
  0.01 ms   1   NohBean.profilePicture()
  0.01 ms   1   FroBean.setToDefault()
  0.01 ms   1   FroBean.getRecentMarker() 

Zweitens gibt es eine Profilseite auf der Seam Wissensbasis , aber es ist nicht so gut, wirklich .

Dan Allen auch einen schönen zweiteiligen Beitrag schrieb über Ihre JSF-Anwendung zu beschleunigen, die lesenswert ist.

Teil 1

Teil 2


Firebug wie Werkzeug ist auch ein Muss für JavaScript / Ajax Performance Tooling

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top