Search code examples
javajmeterperformance-testingthreadpooltestbed

JMeter: Performance testing of two different Thread Pools and their comparison


My question is different from this as it is too old and there may be new JMeter Plugins.
I have two Java Classes Server1 and Server2.
Server1 class extends ThreadPoolExecutor.
Server2 class extends WaterMarkExecutor
User can connect to any of these Servers through Socket and submit Runnable Objects( that calculate some Random number).These Runnable objects are send back to the client as responses. For each Runnable Object i am calculating its resonse time and the wait-time it did in the queue of thread pool. Each Server is exposing me its Pool size and throughput after every second. I want to display and compare the performance statistics of these two servers in charts.
Instead of develping my own library for this, i want to use JMeter.
I want JMeter to
1)connect to Server1
2)send Runnable objects at specific rate
3)receive executed Runnable objects back from Server1 (as responses).
4)display the response time and wait(in queue) of each received Runnable object on Charts.
5) Display throughput and pool size of Server 1 on separate charts.
6)then i want to use the same experiment(workload etc) on Server 2 and want JMeter to compare the performance of two servers.
Now my questins are
(1) Is it easy to use JMeter for this scenario? or i should switch to some testbed(or any other tool)?
(2)suggest me some useful links of JMeter that can guide me to do this.


Solution

  • From your problem statement - it looks like you have got a server application with which clients can interact by sending java objects using serialization binary protocol. Jmeter is generally not used for such testing as it generally caters to other well known protocols like http, jms, ftp etc. There are readily available samplers for these. However if you want to use java serilization your best bet it to perhaps use java sampler to write own request sending/response recieving code or to use a commercial plugin ( available for trial) like this.

    Other alternative is to perhaps write your own test application and use statistics from there to create visualizations.