VPS 2000 G9 - Ständig out of memory

  • Hallo,


    habe auf meinem VPS 2000 G9 ein Program, dass normal 3 GB reserviert und dem ich nun per Skript sogar 5 GB reserviert habe. Im Paket habe ich ja deutlich mehr RAM. Klar es ist VPS. Aber die JAVA App stirbt ständig mit einer Out of Memory Meldung. Ist das normal für VPS oder habe ich eher ein technisches Problem?

  • Wie genau reservierst du denn den Arbeitsspeicher und für was genau? Wenn dein Programm stetig mehr Arbeitsspeicher für sich beansprucht und dieser limitiert ist, wird dein Programm immer und immer wieder out of memory gehen. Daher solltest du mal genau schauen warum soviel Arbeitsspeicher beansprucht wird und ob dies eventuell unterbunden werden kann.

  • Hört sich nach einem memory leak an.

    Du speicherst also irgendwo was zwischen ohne es wieder zu löschen.

    Evtl irgendwo ne statische Liste die immer nur gefüllt wird??

    Es gibt aber gute Programme wo auch in die jvm einklinken und dir dann zeigen wo der Speicher hin ist. Weiß leider nicht mehr den Namen

  • Zur Info: Um bei Java-Anwendungen die Ausführungsgeschwindigkeit der entsprechenden Anwendung deutlich zu erhöhen, kann man bei Bedarf in der Befehlszeile zum Start der entsprechenden Java-Anwendung per spezieller Option auch eine Mindest-RAM-Größe reservieren, auch wenn diese Anwendung diese Mindest-RAM-Größe nicht wirklich benötigt.


    Wird diese reservierte Mindest-RAM-Größe aus irgendwelchen Gründen unterschritten, z.B. verursacht durch den Wirt, stirbt die Java-Anwendung gnadenlos.

  • Was andreas. meint ist Richtig.

    Du musst die Java Anwendung folgendes JVM Argumente geben.

    Code
    java -Xms3G -Xmx5G -jar meineAnwendung.jar

    Das sagt aus das die Anwendung 3 GB Minium RAM hat und 5 GB RAM Maximal.

    Ich kenne das noch aus alten Zeiten wo ich mal ein Minecraft Server hatte, weil dieser auch mit Java läuft. ;)

    Quellen:

    https://docs.oracle.com/cd/E22…m-and-java-arguments.html

    https://www.baeldung.com/jvm-parameters