jmeter-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sebb <seb...@gmail.com>
Subject Re: Need help to load application using 500 concurrent users
Date Fri, 11 Sep 2009 23:14:48 GMT
On 12/09/2009, alongir <alon@cloud-intelligence.com> wrote:
>
>  Hi.
>
>  This can happen due to overloading your JMeter instances.

Sorry, what can happen when overloading JMeter?

If you are referring to connection refused, then this is generated by
the server, not JMeter.
I don't see how JMeter being overloaded can cause this - if anything,
an overloaded JMeter will generate less load.

>  I'm not sure I am
>  referring to the right exceptions code, however, I did encounter such
>  experience when I tried to ask too much of my JMeter instances in a
>  distributed environment.
>
>  If you want to isolate the problem, I can supply you with multiple JMeter
>  instances already configured. You can try it with let's say 6 strong
>  machines running a small to medium load and see if the problems is solved.
>
>  Take a look at my website, it's  http://www.cloud-intelligence.com/load
>  http://www.cloud-intelligence.com/load  . If you think this can solve
>  anything for you, I can create a temporary account and let you test it.
>
>  Best,
>  Alon.
>
>
>
>  sebb-2-2 wrote:
>  >
>  > On 11/09/2009, Jakub Białek <ragnor84@gmail.com> wrote:
>  >> Obviously JMeter supports much more than 30 threads. But if you use
>  >>  JMeter to simulate e.g. 200 concurrent users to check load and
>  >>  response time of your application then you can use e.g.:
>  >>  - 1 jmeter instance with 200 threads or
>  >>  - 2 jmeter instances with 100 threads each or
>  >>  - 4 jmeter instances with 50 threads each or
>  >>  - 8 jmeter instances with 25 threads each
>  >>  ......
>  >>  The last solution is the best if you want simulate real load that can
>  >>  be generated by 200 real users. The first solution is the worst. I'll
>  >>  explain it below.
>  >>  Let's assume that you have 1 core CPU. Some facts:
>  >>  - at the moment on your cpu can run only one process/thread to
>  >>  simulate multitasking OS gives small amount of time to each
>  >>  process/thread and changes the process/thread context
>  >>  - changing/switching process cost several cpu cycles because cpu
>  >>  registers have to be filled with corresponding data
>  >>  - changing/switching thread is cheaper
>  >>  - not only jmeter runs on your machine also many other
>  >>  application/process bounded to the OS, so jmeter is often dispossess
>  >>  and waiting for cpu cycles
>  >>  - not only workers threads of jmeter runs, also other java threads
>  >>  e.g. GCThread, all those threads compete for cpu
>  >>  - when one thread/process is running others are sleeping/waiting
>  >>  - process/thread can by disposed at any time of execution
>  >
>  > These are all true, but:
>  >
>  >>  Conclusion:
>  >>  - 200 jmeter threads don't mean 200 concurrent users, load generated
>  >>  by those jmeter instances will be much less than this by 200
>  >>  concurrent real users
>  >
>  > That's not a valid conclusion unless JMeter is running out of CPU.
>  >
>  > In general, a single JMeter thread can generate *more* load than a
>  > single user, because it can send requests much faster than a human.
>  >
>  >>  - more jmeter threads more time spent on switching context, less time
>  >>  used by jmeter worker threads
>  >>  - any worker thread can be disposed (and wait when rest 199 threads
>  >>  will take their cpu time) after receiving answer from server but
>  >>  before calculate time that call to server took so this time will be
>  >>  incorrect
>  >>
>  >>  So if your goal is to simulate as good as possible load generated by
>  >>  many users then use so much jmeter instances (computers) as you can
>  >>  with as less as possible threads on each jmeter instance. Otherwise
>  >>  your results can be far from reality and you can be surprised why your
>  >>  application can't handle with those users even though jmeter stress
>  >>  tests passed.
>  >
>  > Again, I disagree with this.
>  >
>  >>  If someone is interested in comparison how performance of my
>  >>  application changes depending on jmeter configuration (number of
>  >>  threads and number of instances) I can do that test. I have 10 servers
>  >>  with 2 CPU each and each CPU with 4 core. Those servers can be used as
>  >>  a JMeter clients.
>  >>
>  >>
>  >>  Best regards,
>  >>  Jakub
>  >>
>  >>
>  >>  W dniu 11 września 2009 15:54 użytkownik sebb <sebbaz@gmail.com>
>  >> napisał:
>  >>
>  >> > On 11/09/2009, Jakub Białek <ragnor84@gmail.com> wrote:
>  >>  >> How about tomcat is it on linux or windows machine? Make sure that
OS
>  >>  >>  doesn't limit the max number of inbound connection.
>  >>  >>
>  >>  >>  Jakub
>  >>  >>
>  >>  >>  BTW. I think that 200 thread on 1 jmeter instance are to many if
you
>  >>  >>  don't have cpus that support 64 threads simultaneously ;) . I
>  >> usually
>  >>  >>  use no more than 50 on 8 core system.
>  >>  >>
>  >>  >
>  >>  > A single JMeter instance can support many more than 50 threads,
>  >>  > depending on the test plan.
>  >>  >
>  >>  >>
>  >>  >>  2009/9/11 Mytho Logic <maumita.majumdar@gmail.com>:
>  >>  >>  > Hi,
>  >>  >>  >
>  >>  >>  > I tried with 550 threads in tomcat for 500 concurrent users.
But
>  >> not
>  >>  >>  > succeed.
>  >>  >>  >
>  >>  >>  > Jmeter Client:-
>  >>  >>  > System: Windows XP Professional Verison 2002 SP2
>  >>  >>  > Computer: Intel(R) Core(TM)2 CPU 6300 @ 1.86 Ghz 1.86 GHz,
1.97 GB
>  >> of RAM
>  >>  >>  >
>  >>  >>  > Jmeter Server:-
>  >>  >>  > System: Windows XP Professional x64 Edition Verison 2003 SP2
>  >>  >>  > Computer: Intel(R) Xeon(R) CPU 5130 @ 2.00 Ghz 2.00 GHz, 8.00
GB
>  >> of RAM
>  >>  >>  >
>  >>  >>  > Thanks
>  >>  >>  > Maumita
>  >>  >>  >
>  >>  >>  >
>  >>  >>  > 2009/9/11 Jakub Białek <ragnor84@gmail.com>
>  >>  >>  >
>  >>  >>  >> If you have 500 (truly) concurrent users then you need
at least
>  >> 500
>  >>  >>  >> threads in tomcat, try with 550 thread.
>  >>  >>  >>
>  >>  >>  >> You run jmeter on windows or linux os?
>  >>  >>  >>
>  >>  >>  >> Best regards,
>  >>  >>  >> Jakub
>  >>  >>  >>
>  >>  >>  >> 2009/9/11 Mytho Logic <maumita.majumdar@gmail.com>:
>  >>  >>  >> > Hi,
>  >>  >>  >> >
>  >>  >>  >> > I changed the maxthreads limit in tomcat server.xml
to 400 and
>  >> tried the
>  >>  >>  >> > same testplan again..but few sample requests gets
failed and
>  >> throws
>  >>  >>  >> > exception.
>  >>  >>  >> > what should I do to solve the problem.
>  >>  >>  >> >
>  >>  >>  >> > Exception:-
>  >>  >>  >> >
>  >>  >>  >> > java.net.ConnectException: Connection refused: connect
>  >>  >>  >> >    at java.net.PlainSocketImpl.socketConnect(Native
Method)
>  >>  >>  >> >    at
>  >> java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
>  >>  >>  >> >    at
>  >> java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
>  >>  >>  >> >    at
>  >> java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
>  >>  >>  >> >    at java.net.Socket.connect(Socket.java:519)
>  >>  >>  >> >    at java.net.Socket.connect(Socket.java:469)
>  >>  >>  >> >    at sun.net.NetworkClient.doConnect(NetworkClient.java:157)
>  >>  >>  >> >    at
>  >> sun.net.www.http.HttpClient.openServer(HttpClient.java:382)
>  >>  >>  >> >    at
>  >> sun.net.www.http.HttpClient.openServer(HttpClient.java:494)
>  >>  >>  >> >    at sun.net.www.http.HttpClient.<init>(HttpClient.java:231)
>  >>  >>  >> >    at sun.net.www.http.HttpClient.New(HttpClient.java:304)
>  >>  >>  >> >    at sun.net.www.http.HttpClient.New(HttpClient.java:316)
>  >>  >>  >> >    at
>  >>  >>  >> >
>  >>  >>  >>
>  >> sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:817)
>  >>  >>  >> >    at
>  >>  >>  >> >
>  >>  >>  >>
>  >> sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:769)
>  >>  >>  >> >    at
>  >>  >>  >> >
>  >>  >>  >>
>  >> sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:694)
>  >>  >>  >> >    at
>  >>  >>  >> >
>  >>  >>  >>
>  >> org.apache.jmeter.protocol.http.sampler.HTTPSampler.sample(HTTPSampler.java:431)
>  >>  >>  >> >    at
>  >>  >>  >> >
>  >>  >>  >>
>  >> org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1021)
>  >>  >>  >> >    at
>  >>  >>  >> >
>  >>  >>  >>
>  >> org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1007)
>  >>  >>  >> >    at
>  >> org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:290)
>  >>  >>  >> >    at java.lang.Thread.run(Thread.java:595)
>  >>  >>  >> >
>  >>  >>  >> > Thanks
>  >>  >>  >> > Maumita
>  >>  >>  >> >
>  >>  >>  >> >
>  >>  >>  >> > On Fri, Sep 11, 2009 at 3:07 PM, sebb <sebbaz@gmail.com>
wrote:
>  >>  >>  >> >
>  >>  >>  >> >> On 11/09/2009, Mytho Logic <maumita.majumdar@gmail.com>
wrote:
>  >>  >>  >> >> > Hi,
>  >>  >>  >> >> >
>  >>  >>  >> >> >  In tomcat server.xml, I changed the maxtheads
limit to 300
>  >> and kept
>  >>  >>  >> >> >  JAVA_OPTS=-Xms512m -Xmx1024m
>  >>  >>  >> >> >
>  >>  >>  >> >> >  But not succeed.I am getting same
>  >> "java.net.ConnectException:
>  >>  >>  >> Connection
>  >>  >>  >> >> >  refused: connect" exception. Am I missing
anything to
>  >> change in
>  >>  >>  >> >> server.xml
>  >>  >>  >> >> >  file.
>  >>  >>  >> >> >  The machine on which tomcat server is running
has 2 GB RAM.
>  >>  >>  >> >> >
>  >>  >>  >> >> >  Please help on this.
>  >>  >>  >> >>
>  >>  >>  >> >> This appears to be a Tomcat configuaration issue.
>  >>  >>  >> >>
>  >>  >>  >> >> Read the Tomcat documentation carefully, and if
that does not
>  >> answer
>  >>  >>  >> >> your query, then post a question on the Tomcat
user list.
>  >>  >>  >> >>
>  >>  >>  >> >> >  Thanks
>  >>  >>  >> >> >  Maumita
>  >>  >>  >> >> >
>  >>  >>  >> >> >
>  >>  >>  >> >> >  On Fri, Sep 11, 2009 at 10:15 AM, Deepak
Shetty
>  >> <shettyd@gmail.com>
>  >>  >>  >> >> wrote:
>  >>  >>  >> >> >
>  >>  >>  >> >> >  > Hi
>  >>  >>  >> >> >  > http://tomcat.apache.org/tomcat-5.5-doc/config/http.html
>  >>  >>  >> >> >  > There are three thread related properties
in server.xml .
>  >> You seem
>  >>  >>  >> to
>  >>  >>  >> >> have
>  >>  >>  >> >> >  > run into maxThreads limit
>  >>  >>  >> >> >  > Note that if your server cant handle
the load that is a
>  >> server/OS
>  >>  >>  >> >> problem ,
>  >>  >>  >> >> >  > you are more likely to get help on
a tomcat forum. Jmeter
>  >> is
>  >>  >>  >> >> generating the
>  >>  >>  >> >> >  > load correctly.
>  >>  >>  >> >> >  > regards
>  >>  >>  >> >> >  > deepak
>  >>  >>  >> >> >  >
>  >>  >>  >> >> >  > On Thu, Sep 10, 2009 at 9:38 PM, Mytho
Logic <
>  >>  >>  >> >> maumita.majumdar@gmail.com
>  >>  >>  >> >> >  > >wrote:
>  >>  >>  >> >> >  >
>  >>  >>  >> >> >  > > Hi,
>  >>  >>  >> >> >  > >
>  >>  >>  >> >> >  > > I am using jmeter version 2.3.2.
>  >>  >>  >> >> >  > > To test my application for 200
concurrent users I have
>  >> used
>  >>  >>  >> >> distibuted
>  >>  >>  >> >> >  > > testing set up.
>  >>  >>  >> >> >  > > It works fine for 200 users.
>  >>  >>  >> >> >  > > The test plan was -
>  >>  >>  >> >> >  > > 1. 200 concurrent users will first
hit the home page
>  >>  >>  >> >> >  > > 2. After that 200 concurrent users
will hit the
>  >> products page
>  >>  >>  >> >> >  > > 3. After that 200 concurrent users
will hit the product
>  >> Detail
>  >>  >>  >> page
>  >>  >>  >> >> >  > >
>  >>  >>  >> >> >  > > For concurrent user setup I have
used 'Synchronizing
>  >> Timer' above
>  >>  >>  >> >> the
>  >>  >>  >> >> >  > > thread
>  >>  >>  >> >> >  > > groups and mentioned 200.
>  >>  >>  >> >> >  > > It works fine and I  got the result.
>  >>  >>  >> >> >  > >
>  >>  >>  >> >> >  > > Setup:-
>  >>  >>  >> >> >  > >
>  >>  >>  >> >> >  > > Tomcat server, Jmeter client and
Jmeter server all are
>  >> in 3
>  >>  >>  >> >> different
>  >>  >>  >> >> >  > > machine.
>  >>  >>  >> >> >  > >
>  >>  >>  >> >> >  > > Tomcat Server
>  >>  >>  >> >> >  > > -------------
>  >>  >>  >> >> >  > > JAVA_OPTS=-Xms1024m -Xmx1024m
>  >>  >>  >> >> >  > >
>  >>  >>  >> >> >  > > Jmeter Client
>  >>  >>  >> >> >  > > -------------
>  >>  >>  >> >> >  > > HEAP=-Xms512m -Xmx1024m
>  >>  >>  >> >> >  > >
>  >>  >>  >> >> >  > > Jmeter Server
>  >>  >>  >> >> >  > > -------------
>  >>  >>  >> >> >  > > HEAP=-Xms512m -Xmx4096m
>  >>  >>  >> >> >  > >
>  >>  >>  >> >> >  > > Using the same configuration and
same setup,when i
>  >> tried for 220
>  >>  >>  >> >> >  > concurrent
>  >>  >>  >> >> >  > > users for few few sample requests
I got
>  >>  >>  >> >> >  > > "java.net.ConnectException: Connection
refused:
>  >> connect:
>  >>  >>  >> exception.
>  >>  >>  >> >> >  > > Sometime I succeded for 220 concurrent
users without
>  >> any
>  >>  >>  >> errors.But
>  >>  >>  >> >> next
>  >>  >>  >> >> >  > > time whne I again run the test
plan for
>  >>  >>  >> >> >  > > 220 concurrent users I got exception.
>  >>  >>  >> >> >  > >
>  >>  >>  >> >> >  > > What is the reason behind this
exception and how can I
>  >> solve
>  >>  >>  >> this?
>  >>  >>  >> >> >  > > I need to load my application
upto 500 concurrent
>  >> users. Please
>  >>  >>  >> >> suggesst
>  >>  >>  >> >> >  > > how
>  >>  >>  >> >> >  > > can I do this?
>  >>  >>  >> >> >  > >
>  >>  >>  >> >> >  > > This is an urgent requirement.
>  >>  >>  >> >> >  > >
>  >>  >>  >> >> >  > > Thanks
>  >>  >>  >> >> >  > > Maumita
>  >>  >>  >> >> >  > >
>  >>  >>  >> >> >  >
>  >>  >>  >> >> >
>  >>  >>  >> >>
>  >>  >>  >> >>
>  >> ---------------------------------------------------------------------
>  >>  >>  >> >> To unsubscribe, e-mail:
>  >> jmeter-user-unsubscribe@jakarta.apache.org
>  >>  >>  >> >> For additional commands, e-mail:
>  >> jmeter-user-help@jakarta.apache.org
>  >>  >>  >> >>
>  >>  >>  >> >>
>  >>  >>  >> >
>  >>  >>  >>
>  >>  >>  >>
>  >> ---------------------------------------------------------------------
>  >>  >>  >> To unsubscribe, e-mail:
>  >> jmeter-user-unsubscribe@jakarta.apache.org
>  >>  >>  >> For additional commands, e-mail:
>  >> jmeter-user-help@jakarta.apache.org
>  >>  >>  >>
>  >>  >>  >>
>  >>  >>  >
>  >>  >>
>  >>  >>
>  >> ---------------------------------------------------------------------
>  >>  >>  To unsubscribe, e-mail: jmeter-user-unsubscribe@jakarta.apache.org
>  >>  >>  For additional commands, e-mail: jmeter-user-help@jakarta.apache.org
>  >>  >>
>  >>  >>
>  >>  >
>  >>  > ---------------------------------------------------------------------
>  >>  > To unsubscribe, e-mail: jmeter-user-unsubscribe@jakarta.apache.org
>  >>  > For additional commands, e-mail: jmeter-user-help@jakarta.apache.org
>  >>  >
>  >>  >
>  >>
>  >>  ---------------------------------------------------------------------
>  >>  To unsubscribe, e-mail: jmeter-user-unsubscribe@jakarta.apache.org
>  >>  For additional commands, e-mail: jmeter-user-help@jakarta.apache.org
>  >>
>  >>
>  >
>  > ---------------------------------------------------------------------
>  > To unsubscribe, e-mail: jmeter-user-unsubscribe@jakarta.apache.org
>  > For additional commands, e-mail: jmeter-user-help@jakarta.apache.org
>  >
>  >
>  >
>
>  --
>
> View this message in context: http://www.nabble.com/Need-help-to-load-application-using-500-concurrent-users-tp25394934p25409633.html
>  Sent from the JMeter - User mailing list archive at Nabble.com.
>
>
>
>  ---------------------------------------------------------------------
>  To unsubscribe, e-mail: jmeter-user-unsubscribe@jakarta.apache.org
>  For additional commands, e-mail: jmeter-user-help@jakarta.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-user-help@jakarta.apache.org


Mime
View raw message