I am trying to send requests using JMeter to my application that is running on localhost but many of the requests get failed due to java.net.SocketException. I do not see any exceptions in console though.
I read these question1 and question2 but did not help much.
My code is as following:
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;
}
Screen shots of my JMeter configuration
From Screenshots you provided, I think either you thought your system/localhost as super computer or you have mis-configured the jmeter settings.
Screenshot shows, 10000 users/threads will start in 1 second which is completely unreal for application running on a localhost. Jmeter alone will eat most CPU, memory i.e. system resources.
If your Jmeter is eating all resources will your application will get anything (Simple answer is NO) Thus application will go down and you will start getting timeout errors or socket exceptions.
If you have jmeter and application on diff machines then still 10000 users in 1 second is very high load for a normal application and it is obvious that you will face such errors. Try running test with realistic load that is expected for your application with given hw. Maybe 100 users in 1 second and gradually increase them to expected value.
I hope you understood it now :)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With