Dienstag Apr. 04, 2006

JMETER: java.rmi.ConnectException: Connection refused to host: 127.0.0.1

Das ansonsten gute Stresstool Apache Jakarta JMeter kann einen manchmal in den Wahnsinn treiben. Probleme gibts zum Einen wenn man hinter einer Firewall sitzt mit dem GUI und mehrere Server "dahinter" hat. Da kann dann RMI keinen Callback durch die Firewall zur GUI machen kann. Oder wenn man auf dem/den Server(n) unterschiedliche Java Versionen verwendet, dann kann es auch zu Problemen mit RMI kommen.

Und dann gibts immer wieder mal java.rmi.ConnectException: Connection refused to host: 127.0.0.1 wenn man im jmeter.log guggt und ebenfalls oben beschriebenes Szenario hat. Mit manchen Servern kann das GUI reden und bei Anderen kommt die Connection refused Meldung. Nun diese Meldung kommt daher, da der Aufruf

InetAddress.getLocalHost().getHostName()

im JMeter Code auf der Serverseite einfach "127.0.0.1" zurückliefert. Der Server sagt also zum GUI: "Hör mal: Du kannst mich unter 127.0.0.1 erreichen" - was natürlich nicht der Fall ist... Man muss also mal in die /etc/hosts guggen, ob da nicht der Servername hinter der 127.0.0.1 steht. Hier sollte statt dessen die IP stehen, unter der das GUI den Server wirklich erreichen kann.

Ein kleines Testprogramm in Java, was o.g. Aufruf zurückgibt:

import java.net.*;

class GetHostName {

        public static void main(String[] args) {
                try {
                        System.out.println(InetAddress.getLocalHost().getHostName());
                }
                catch(Exception e) {
                        e.printStackTrace();
                }
        }

}

Siehe auch: Remote Testing Trouble

Kommentare:

Senden Sie einen Kommentar:
  • HTML Syntax: Ausgeschaltet