Warum erhalte ich " Antwort-code: Nicht HTTP response code: java.net.SocketException?
Ich versuche zum senden von Anforderungen mithilfe von JMeter zu meiner Anwendung, die ausgeführt wird, auf localhost aber viele Anfragen bekommen, scheiterten java.net.SocketException. Ich sehe keine Ausnahmen in der Konsole, obwohl.
Lese ich diese question1 und question2 aber nicht viel helfen.
Mein code ist wie folgt:
try {
return myService.findItems(group);
} catch (NullPointerException n) {
n.printStackTrace();
} catch (HibernateException h) {
h.printStackTrace();
} catch (IOException i) {
i.printStackTrace();
}
return null;
Repository
public LinkedHashMap findItems(String group) throws NullPointerException, HibernateException, IOException {
Session session = sessionFactory.getCurrentSession();
..... //request is sent to database
return items;
}
Screenshots von meinem JMeter Konfiguration
Den service, den Sie sich verbinden, erscheint nicht zu einem HTTP-server, oder Sie sonst irgendwie senden einer ungültigen Anfrage.
InformationsquelleAutor Jack | 2015-06-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Screenshots für Sie bereitgestellt, ich denke, entweder Sie dachten, dass Ihr system/"localhost" als super-computer, oder Sie haben falsch konfiguriert ist der jmeter-Einstellungen.
Screenshot zeigt, 10000 user/threads startet in 1 Sekunde, das ist völlig unwirklich für die Anwendung auf einem localhost. Jmeter allein Essen werden, die meisten CPU -, Arbeitsspeicher-d.h. system-Ressourcen.
Wenn Ihr Jmeter ist, Essen alle Ressourcen Ihrer Bewerbung wird etwas (Einfache Antwort ist NEIN), Damit die Anwendung wird nach unten gehen, und Sie werden beginnen, immer timeout-Fehler oder-Buchse Ausnahmen.
Wenn Sie jmeter und Anwendung auf diff-Maschinen und dann noch 10000 Benutzern in 1 Sekunde sehr hohe Belastung für eine normale Anwendung, und es ist offensichtlich, dass Sie vor solchen Fehlern. Versuchen Sie, testen Sie mit realistischen Last, die erwartet wird, für Ihre Anwendung mit der gegebenen hw. Vielleicht 100 Benutzer in 1 Sekunde und nach und nach erhöhen Sie erwarteten Wert.
Ich hoffe Sie verstehen es jetzt 🙂
InformationsquelleAutor Nachiket Kate
SocketException bedeutet Netzwerk-problem. überprüfen Sie, ob Sie mit server-status.
Befehl ausführen
netstat /a /n
, ist der tcp-port überwacht?Ich bin auf mac gibt es keine alternative? Sind Sie sicher, dass nichts falsch ist mit dem code?
Nein, nicht problem des Codes. ich weiß nicht mac, kann google es für ein Weg, um überprüfen Sie Ihre localhost-listening-ports und überprüfen.
InformationsquelleAutor Jiang YD