Muadibb Geschrieben 4. Mai 2007 Teilen Geschrieben 4. Mai 2007 Hallo zusammen, ich benötige Anregungen für folgendes Szenario: ich habe eine AIX 5.3 ML 4 mit einer LPAR, die 1 CPU und 3,5 GB hat. Dort starte ich einen JAVA-Prozess. Dieser Prozess schreibt ein Log-File in das gleiche Verzeichnis, wo sich mein Skript zum Starten befindet. Wenn ich tail -f auf das Logfile mache, sehe ich 10 Minuten lang, dass kein Output in das Log geschrieben wird. Danach wird innerhalb von 2 Sekunden der erwartete Ouput beim Starten dieses Prozesses geschrieben. Während der 10 Minuten Wartezeit kann ich den Prozess auch nicht ansprechen und ich bekomme mit netstat -an|grep <port> auch keinen Eintrag mit Status LISTEN zurück. Die Frage, die sich mir dabei stellt, ist folgende: Was kann betriebssystemseitig dazu führen, dass ich eine so große Verzögerung habe. Ich muss dem Kunden diesbezüglich die richtigen Fragen zur Konfiguration seines Servers stellen, damit das Problem eingegrenzt werden kann. Mein erster Anhaltspunkt wäre die Auslastung, was meiner Meinung nach aber nicht sein kann, da ein anderer Prozess auf der selben LPAR große Datenmengen in akzeptabler Zeit verarbeitet. Könnt Ihr mir bitte mit weiteren Ideen helfen? Danke und Gruß, Muadibb Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SystemError Geschrieben 6. Mai 2007 Teilen Geschrieben 6. Mai 2007 Hmmm... ok, einfach mal so ins Blaue hinein: was sagt denn die tatsächliche Auslastung der Maschine während du den Prozess startest? (---> vmstat / iostat / topas / nmon64) Bekommt Dein JavaProzess beim starten Parameter bezüglich der HeapSize mit? Was macht der Prozess eigentlich genau? Treten evtl. irgendwelche Timeouts auf, weil z.B. bestimmte Namen nicht aufgelöst werden können oder bestimmte Netzwerkverbindungen nicht aufgebaut werden können? Bye SystemError Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Muadibb Geschrieben 7. Mai 2007 Autor Teilen Geschrieben 7. Mai 2007 Hi, danke erstmal für Deine Antwort. Ja, es werden Java Optionen mitgegeben, u.a. auch "-Xms512m -Xmx512m". Da habe ich auch nochmal nachgefragt, wieviel Speicher belegt ist. Der Prozess ist in erster Linie dafür verantwortlich, Anfragen von weiteren Prozessen zu verwalten und weiterzuleiten. Da ich kein AIX Admin bin, habe ich noch eine Frage. Kann ich verschiedenen LPARs unterschiedliche Prioritäten für die Ausführung von Prozessen mitgeben, also keine Regelung auf Prozessebene (nice) sondern für eine ganze LPAR? Leider war Google und Co bei meinen Suchen nicht sehr ergiebig. Gruß, Muadibb Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schlaubi Geschrieben 7. Mai 2007 Teilen Geschrieben 7. Mai 2007 Ist das ein Prozess der ständig läuft? Welche Java-Version wird genau verwendet? Es gibt weitaus mehr Startparameter, die man dem Java-Prozess mitgeben kann, evlt. könnte man in diese Richtung nochmal suchen (Stichwort Garbage Collection)? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Muadibb Geschrieben 7. Mai 2007 Autor Teilen Geschrieben 7. Mai 2007 Ja, der Prozess läuft ständig, bis er manuell beendet wird. Es wird eine private JRE 1.4.2 benutzt. Also, du meinst er braucht deshalb lange, weil es auf diesem System lange dauert eine JVM zu initialisieren? Warum könnte es mit derselben AIX und private JRE Version auf diesem Server länger dauern als auf einem anderen? Die Optionen sind immer gleich eingestellt. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schlaubi Geschrieben 9. Mai 2007 Teilen Geschrieben 9. Mai 2007 Warum könnte es mit derselben AIX und private JRE Version auf diesem Server länger dauern als auf einem anderen? Die Optionen sind immer gleich eingestellt. Das ist ein interessante Info, die die Situation allerdings nicht besser (nicht ganz nachvollziehbar) macht Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
b41nd34d Geschrieben 9. Mai 2007 Teilen Geschrieben 9. Mai 2007 also keine Regelung auf Prozessebene (nice) sondern für eine ganze LPAR? Nein, die sind völlig unabhängig. Wenn kann man einem LPAR mer pri als ganzes geben. So ein paar Gedanken von mir: - Wie lange brauchen andere Progs zum starten? < schließt Performance an sich aus (aber bitte kein grep oder so nehmen *G*) - Wie lange dauert ein "java -version"? < schließt Probleme mit Java an sich aus - Wie lange dauert es aus einem Javaprogramm einen Ping zu machen (google sollte da recht schnell einen Beispielcode ausspucken)? < schließt Probleme mit TCP/IP aus - Wie lange dauert es einen listen auf einem Port zu öffnen? < schließt Probleme mit den Ports aus - ... < schließ einfach nach und nach mal die Sachen aus die schief gehen könnten. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.