exefx Geschrieben 12. September 2014 Share Geschrieben 12. September 2014 Hallo Leute, was stellt man ein bei einem 32GB Server ? Mein Startscript lautet :java-Xms32048m-Xmx32048m-XX:PermSize=256m-jar server nogui sind die 256 m in Ordnung oder sollte man erhöhen ? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
SleepwalkDrive Geschrieben 22. September 2014 Share Geschrieben 22. September 2014 man knallt doch bet bei 32 gb ram alles in die server anwendung rein oder? Das Os braucht schließlich auch noch ram zum arbeiten... würde sogar auf 16 gb ram runter gehen... Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
idk.cpp Geschrieben 22. September 2014 Share Geschrieben 22. September 2014 Mal abgesehen davon, dass SleepwalkDrive schon recht hat, kommt die PermGen Size noch zum Heap Space dazu (jedenfalls hab ich das so verstanden, bitte korrigieren wenn falsch). Andererseits ist die MaxPermSize auch per Default auf 64M gesetzt. Ich weiß nicht was passiert wenn man eine größere Size als MaxSize hat. Ich würde einen MaxHeap von 24G und eine MaxPermSize von 1G. Ob du eine initiale allokation durchführen willst bleibt dir überlassen, aber ich glaube dass das nur bedingt nötig ist. Freundlich grüßt Sie, idk.cpp Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Gelöscht_kiwi Geschrieben 22. September 2014 Share Geschrieben 22. September 2014 Heyho , ich habe bisher kaum Anwendungen gesehen, die die Limits von (Max)PermSize sprengen können. Das Allokierungsverhalten (z.B. beim JVM-Startup) des Permspaces kannst du heutzutage auch nicht mehr wirklich optimieren - zu einer hohen Wahrscheinlichkeit deoptimierst du! Aber wenn du den PermSpace auf jeden Fall setzen möchtest (eventuell gibt es bei dir ja Grund dazu, das können wir nicht wissen), dann setz bitte nur MaxPermSize. Und ja, 256 MB sind dafür sehr wohlig dimensioniert Zu deinen Heap-Settings: Deine JVM wird mit den Settings sofort crashen (oder in den Swap ausweichen, sofern vorhanden). Durch die Angabe von Xms wird sofortbeim Startup jeglich verfügbarer und nichtverfügbarer Speicher allokiert, da du aber nur insgesamt über 32GB verfügst, kann deine Applikation nicht jedes Bit davon nutzen. Dein Kernel braucht auch etwas RAM, genauso wie dein DHCP-Client und dein NTP-Dienst Viel wichtiger ist jedoch der betriebssystemseitige Filesystemcache! Wenn du dem keine Luft zum Atmen gibst, killst du zwangsläufig deine IO-Performance, was besonders schwer zum Tragen kommst, wenn du dir mit deiner virtuellen Maschine (?) die Hostmaschine mit 10 weiteren Leuten teilst. Auf 64bit-Systemen wirst du mit einer so großen Allokierung auch die JVM-Pointercompression verlieren, die für Applikationen mit _sehr hohem_ Referenzaustausch einen nicht unbedeutenden Overallperformanceschub bedeutet. Soll heißen: Xmx würd ich nicht höher als 24GB setzen (das ist schon echt viel), und Xms nicht höher als 1-4GB. Wenn du irgendwann feststellst, dass dein Javaprozess immer so bei X GB Speichernutzung liegt, dann kannst du die Xms auch daraufhin anpassen. LG, kiwi Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden