Oft habe ich OutOfMemoryException auf IBM Websphere Application Server gefunden. Ich denke, diese Ausnahme auftreten, weil meine Anwendung abrufen Huge Daten aus der Datenbank. Also, ich begrenze alle Abfrage nicht retreive Daten mehr als 1000 Datensätze und setzen JVM von WAS folgen
+ Verbose garbage collection
+ Maximum Heap size = 1024 (RAM on my server is 16 GB and now I already change to 8192)
+ Debug arguments = -Djava.compiler=NONE -Xdebug -Xnoagent
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7777
+ Generic JVM arguments = -Dsun.rmi.dgc.server.gcInterval=60000
-Dsun.rmi.dgc.client.gcInterval=60000 -Xdisableexplicitgc
-Dws.log=E:\WebApp\log -Dws.log.level=debug
(ws.log and ws.log.level are my properties)
Und ich fand heapdump , javacore y schnappen Dateien im Ordner "profiles" können mir die Ursache des Problems nennen, aber ich weiß nicht, wie man Heapdump-, Javacore- und Snap-Dateien liest/verwendet.
Bitte sagen Sie mir, wie ich OutOfMemoryException verhindern/vermeiden/beheben kann. Danke