Performance Probleme wegen vieler Objekte

OnDemand

Top Contributor
hallo zusammen,

stoße mit meinem Server langsam an seine Grenzen. Ständig Kapazitätsprobleme und die CPU wird von Glassfish fast zu 100% genutzt. Jetzt muss ich meine Programmierung hinterfragen...

Ich lese ca 50 Txt Dateien und erstelle für jede Zeile ein Object. ZB jede Datei hat 10.000 Zeilen, jede Zeile ist ein Auto welches zum Objekt wird mit Ps, Marke etc. Ca 30 Getter und Setter.

Hier fangen schon die ersten Probleme an, zu viele Objekte! Server lahmt langsam, xmx ist auf 30GB aber trotzdem krachts!

Sollte man jetzt die Daten schon in einer DB zwischenspeichern?

Die Objekte werden dann mit externen Datenbanken abgeglichen, und da aktualisiert wenn sich Preise oder Lieferstati geändert haben. Dann ist das Objekt unnütz und kann verschwinden.

Da die Daten nicht ständig gleich sind und bei jedem Lesen neuenWerten haben, habe ich darauf verzichtet diese persistent zu machen.

Freue mich auf konstruktive Vorschläge! Wann speichert Ihr Daten in einer DB ab? Würde das abspeichern Kapazitätsprobleme mindern?
 

stg

Top Contributor
Brauchst du denn alle Daten gleichzeitig im Speicher? Und brauchst du überhaupt alle Daten aus deinen Text-Files?
Nach deiner Problem-Beschreibung zu urteilen kannst du das doch auch alles häppchenweise machen ohne großenn Memory Footprint..

Hast du mal geschaut, wie viel Speicher deine Objecte tatsächlich belegen? Um die 30GB vollzubekommen müsste da ja schon einiges drin stehen....

Wenn du 50 Text-Files mit je 10.000 Zeilen einliest und währenddessen noch anderes machst, dann geht da natürlich kurzzeitig die CPU Auslastung hoch. Wäre doch auch doof, wenn dein Programm nicht all das an Resourcen nutzt, was es kriegen kann, sonst hättest du da ja quasi eine schon von Haus aus eingebaute Performance-Bremse drin.

Sollte man jetzt die Daten schon in einer DB zwischenspeichern?

Was erhoffst du dir davon? Ob du jetzt 50.000 "Objekte" aus einer Text-Datei oder aus einer Datenbank ausliest wirkt sich ja nicht auf den Speicherverbrauch deiner Anwendung aus.


Würde das abspeichern Kapazitätsprobleme mindern?
Kapazität von was jetzt genau?

Wann speichert Ihr Daten in einer DB ab?
Wenn es sinnvoll ist.
Siehe hier: http://programmers.stackexchange.com/a/190483/244281
 

OnDemand

Top Contributor
Hallo, morgen Stg,
ich brauche sie nicht alle gleichzeitig. Aber ich habe alle Objekte einer List geaddet um diese mit der DB abzugleichen (was fehlt in der DB, was muss aus der Liste neu in die DB gehen und fehlende Objekte aus der List, sollten in der DB gelöscht werden)

Werde statt Objecte zu List zu schreiben, eine Liste mit String erstellen, welche die Artikelnummern behinhaltet.
Werde mal die Datei lesen; Erste Zeile ein Objekt erstellen -> an die DB geben und die SKU an die List hängen. Nächste Zeile das gleiche. So ist ja eigentlich immer nur 1 Objekt im Speicher.
 

OnDemand

Top Contributor
Hallo,

hab es jetzt mal umprogrammiert. von vorher 100.000 Objekte bin ich beim Profiling nun bei 1000 Objekten, welche alle paar Sekunden wieder auf 0 gehen also kommt wahrscheinlich der Garbage Collector um die Ecke.

Edit: Ich erstelle je CSV ein Auto-Objekt, übergebe es an die DB. In der nächsten Zeile wird das Objekt überschrieben. Somit habe ich nur noch 1 Objekt :D Mein Gott hatte ich nen Denkfehler!
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Performance ApplicationBean vs. Datenbanksuche Allgemeines EE 4
J Performance von EJBs vs. normalen Pojos/Seam-Komponenten Allgemeines EE 4
E Performance-Problem beim ersten Request Allgemeines EE 4
ichbindiegute Performance von Entity Bean create vs. JDBC insert Allgemeines EE 11
P Suche free Webanwendung zu testen Last, Performance Allgemeines EE 3
T Design/Performance-Frage beim servlet (static oder nicht) Allgemeines EE 35
N JSF Performance - zu viele Methodenaufrufe, woher kommen sie Allgemeines EE 5
D Probleme beim Umstieg auf Jakarta EE Allgemeines EE 5
Dimax JSP Probleme mit Java in JSP Allgemeines EE 21
B @Startup - FileWatcher - Probleme beim Hochfahren des Servers Allgemeines EE 4
Psypsy Spring Probleme mit Datenzugriff Allgemeines EE 5
D Apache POI Probleme mit Daten(Datum) die aus Formeln entstehen Allgemeines EE 3
T Probleme mit File renameTo bzw. File delete @@ Allgemeines EE 3
F Probleme mit JSF und ManagedBean Allgemeines EE 3
B Probleme mit Templates in einem Webprojekt Allgemeines EE 6
Fu3L Probleme beim Einrichten Allgemeines EE 3
A Probleme bei der Einbindung eines Liferay Portalserver (Glassfish) Allgemeines EE 7
S Datenbankzugriff (Probleme mit Cache?!) Allgemeines EE 8
K Probleme mit Apache MyFaces 2 und ICEFaces Facelets Allgemeines EE 1
K Probleme mit Enterprise Anwendung Allgemeines EE 5
D Probleme mit Cactus Allgemeines EE 9
F <security-constraint> Probleme Allgemeines EE 2
G Probleme im Tomcat - loading WebappClassLoader Allgemeines EE 3
T Probleme mit ApplikationClient mit Sicherheitsanmeldung! Allgemeines EE 2
G Probleme mit dem Klassenpfad nach dem deployment Allgemeines EE 2
Q Probleme bei einbinden von RichFaces. Allgemeines EE 10
T Probleme mit Facelets und if foreach und when Allgemeines EE 3
V Bildupload probleme Allgemeines EE 2
T Probleme mit Komplexerer ejb-ql Abfrage! Allgemeines EE 2
R EJB Client: Probleme mit der Client.jar Allgemeines EE 2
M Probleme mit Leerzeichen bei HtmlOutputLink Allgemeines EE 5
K probleme mit <h:dataTable> Allgemeines EE 2
M probleme mit client server kommunikation Allgemeines EE 3
S Probleme mit struts - ActionServlet Allgemeines EE 6
E BackingBean Probleme Allgemeines EE 2
K JBoss AS & IDE Probleme Allgemeines EE 2
T Probleme beim Einsatz von J2EE / JBoss Allgemeines EE 4
Ö Spring, Probleme mit FlowScope und HttpServletRequest Allgemeines EE 2
J Probleme mit Struts Allgemeines EE 3
DaRolla Probleme mit Verzeichnissen (Servlet, JSP, Tomcat) Allgemeines EE 8
G Probleme mit ResultSet Allgemeines EE 9
L Probleme mit Kompilierung von JNDI Allgemeines EE 2
K Internet Explorer MIME Type Probleme Allgemeines EE 2
M Probleme beim Performancetuning des Servlets Allgemeines EE 2
G Probleme mit Validierung (Struts, validation.xml) Allgemeines EE 4
G Mehrere Probleme mit Servlets/Java Allgemeines EE 15
W Tomcat Probleme Allgemeines EE 7
FsMarine Probleme beim ausführen von JSP dateien unter Tomcat Allgemeines EE 4
E JBoss 4.0.2 - Probleme mit der Spezifikation Allgemeines EE 3
R Probleme mit Tutorial Allgemeines EE 4
M Probleme bei Aufruf von JSPs in Unterverzeichnissen Allgemeines EE 2
M Probleme beim Webservice Deployment(Sun ApplicationServer) Allgemeines EE 2
H JONAS 4.1.4 Start Probleme Allgemeines EE 2
O Probleme mit Aktualität bei JBOSS Allgemeines EE 4
A Probleme mit J2EE und Tomcat Allgemeines EE 7
R Inputstream Probleme Allgemeines EE 11
P Probleme mit File renameTo bzw. File delete Allgemeines EE 3
F Probleme mit Eclipse/JBoss Allgemeines EE 6
D Fehler wegen Rest-Schnittstelle Allgemeines EE 4
pkm Frage wegen AJAX-Zugriff auf ein Servlet Allgemeines EE 1
M JSF Bilder werden wegen jsessionid nicht gefunden (nur IE) Allgemeines EE 6
R Tiles - Layout-Problem wegen Leerzeichen Allgemeines EE 6
A Tomcat undeploy unter Windows klappt nicht wegen struts.jar Allgemeines EE 2

Ähnliche Java Themen

Neue Themen


Oben