Drillsergeant 10 Posted September 3, 2008 Report Share Posted September 3, 2008 Hallo alle zusammen, kann man dem Java Client irgendwie beibringen das er nur x MB Arbeitsspeicher belegen darf? Bei uns kommt der Terminalserver so langsam an seine Grenzen und Java trägt tüchtig dazu bei. Die Leute müssen den ganzen Tag in Java Programmen arbeiten und die blähen sich auf bis zu 150 MB auf. Bei knapp 25 User zeitgleich lagert Windows irgendwann hart auf die Platte aus... Habt ihr Ideen? Mfg Stephan Quote Link to comment
phoenixcp 10 Posted September 3, 2008 Report Share Posted September 3, 2008 Da seh ich eher weniger Chancen. Das Problem dürfte weniger im Client, als vielmehr in der eingesetzten Software liegen. Ich sag nur Memory Leak und der Umgang mit dem Garbage Collector, welcher als Programmierer gelernt sein will. Man könnte maximal in bestimmten Zeitabständen den Client wegreissen und neustarten, aber das ist dann für die User weniger angenehm. Quote Link to comment
Drillsergeant 10 Posted September 3, 2008 Author Report Share Posted September 3, 2008 Der Garbage Collector sollte das eigentlich machen. So etwas habe ich dazu auch schon gelsen. Den Client wegsägen kann ich leider nicht. Dann hätte ich alle User gegen mich ;) Die Software kann ich leider nicht beeinflussen. Die wird vom Hersteller vorgegeben :( Gibt es vielleicht Zusatz-Software die einen Prozess überwachen kann und ihn im Speicherverhalten beieinflussen kann? Mfg Stephan Quote Link to comment
phoenixcp 10 Posted September 3, 2008 Report Share Posted September 3, 2008 Ist mir bei Java AFAIK nix bekannt. Bei DotNet kann man das auf gewisse Art und Weise per .config-File steuern. Der Garbage Collector macht das auch, aber nicht ohne die Einflussnahme des Entwicklers. Sprich, von aussen ist das nicht steuerbar, sondern muss durch den Entwickler im Entwurfsprozess der Software beachtet und vorallem bei der Umsetzung entsprechend berücksichtigt werden. Quote Link to comment
LukasB 10 Posted September 4, 2008 Report Share Posted September 4, 2008 Du kannst java.exe mit -Xmx64M einen maximalen Wert zuweisen den die JVM alloziieeren darf. java - the Java application launcher Allerdings wird dir das wenig helfen, denn die Programme stürzen dann einfach mit einem OutofMemory Fehler weg. Grund für so ein Verhalten sind aber wie phoenixcp schon sagte meistens schlecht programmierte Anwendungen. Wenn sich diese nicht fixen lassen, dann gibts für dich nur einen Weg: Neue x64 TS. Quote Link to comment
Kraftzwerg 10 Posted September 5, 2008 Report Share Posted September 5, 2008 Tach, das klingt bezüglich der DotNet Anwendungen interessant. Wie kann ich diesen Anwendungen denn die Speichermenge vorgeben, die sie nutzen darf? Wir haben eine Anwendung die auf .Net Basis läuft und sehr viel virtuellen Speicher benötigt. Da geht der Server schnell in die Knie. Wenn jemand was genaueres weiss würde mich das sehr interessieren. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.