Ich entwickle eine Webanwendung (mit JBoss und Icefaces), die ein Servlet verwendet, um eine Excel- oder PDF-Datei zu erstellen und an den Browser zu senden.Servlet von Icefaces aufgerufen webapp erzeugt konstant hohe CPU-Auslastung auf Client
Ich habe jedoch Leistungsprobleme, nachdem das Servlet aufgerufen wurde, was zu einer konstant hohen (~ 50%) CPU-Auslastung des Browsers führt. Getestet in Firefox und Internet Explorer auf verschiedenen Rechnern. Die hohe CPU-Auslastung tritt mit einer kleinen Verzögerung (eine halbe Minute) nach dem Aufruf des Servlets auf und bleibt hoch (bis ich den Browser schließe oder die Seite neu lade). Ob ich die erstellte Datei lade oder direkt öffne, macht keinen Unterschied.
Ich bin ratlos, wie dies geschehen kann ...
Gibt es eine Möglichkeit/debug zu analysieren den Browser, um herauszufinden, was den CPU-Verbrauch verursacht?
UPDATE:
ich gefunden habe, dass auf jeden Fall auf die ICEfaces Webapp verwandt ist. Wenn ich meine direkte HTML-Verbindung zu meinem Servlet durch einen Javascript-Aufruf ersetze, der das Servlet in einem neuen Fenster öffnet (mit window.open), dann kann ich die erzeugte Datei ohne Probleme herunterladen.
Auch wenn ich mich in meiner Anwendung auslogge, geht die CPU-Auslastung wieder normal zurück!
UPDATE:
Ok, jetzt Firebug half mir auf: Nachdem das Servlet aufgerufen wurde ich in der Firebug-Konsole zu sehen, dass es XMLHtppRequests sind alle Millisekunden. Jetzt kann ich die CPU-Auslastung verstehen!
POST http://localhost/webapp/block/receive-updated-views
kommt und geht. Lassen Sie sich diese überprüfen ...
UPDATE: Ok ich eine iceface thread gefunden (mit dem entsprechenden iceface jira Fehler), aber die Bugtracker Staaten dies sollte bereits festgelegt werden ... irgendwie nicht mein Fall!
Liegt das Problem nur am Excel- oder PDF-Dokument? Das heißt, wenn Sie es von einem anderen Server ohne Java oder Servlets bedienen? Wenn ja, benötigt diese Frage die Tags [java] und [servlets] nicht. –
Thx. Es bezieht sich definitiv auf die Webanwendung, die Servlets und Icefaces verwendet. Ich habe keine anderen Probleme mit Excel-Downloads oder meinem Browser. –