Bug 63730

Summary: Optimisation to number of /tmp/SerialisedSampleSenderXXXXXX.ser files (network bandwidth tuning)
Product: JMeter Reporter: pierre.astruc
Component: MainAssignee: JMeter issues mailing list <issues>
Status: NEW ---    
Severity: enhancement    
Priority: P2    
Version: 5.1.1   
Target Milestone: JMETER_5.2   
Hardware: PC   
OS: All   

Description pierre.astruc 2019-09-05 15:16:32 UTC
Hello all,
I have one optimisation suggestion about the number of /tmp/SerialisedSampleSenderXXXXXX.ser files created during one test.

In the simple situation of one master with jmeter GUI + one slave server with jmeter-server, I sometime use more than one listener to have quick graphs. (I know it’s not recommended, but it works fine with simple test :)

To reproduce the issue, create one simple test plan with one URL, and add 6 listener (for example jp@gc graph plugins - https://jmeter-plugins.org/wiki/ResponseTimesOverTime)
When you remote run this Test Plan with mode=StrippedDiskStore, you will see one SerialisedSampleSender file for each listener:

l /tmp/ -h
-rw-r--r-- 1 root root 3.4M Sep  5 17:03 SerialisedSampleSender2820299025417446920.ser
-rw-r--r-- 1 root root 3.4M Sep  5 17:03 SerialisedSampleSender3467716893946119156.ser
-rw-r--r-- 1 root root 3.4M Sep  5 17:03 SerialisedSampleSender537889715080696791.ser
-rw-r--r-- 1 root root 3.4M Sep  5 17:03 SerialisedSampleSender5430064167002869825.ser
-rw-r--r-- 1 root root 3.4M Sep  5 17:03 SerialisedSampleSender7709666792947386220.ser
-rw-r--r-- 1 root root 3.4M Sep  5 17:03 SerialisedSampleSender8012499479851562653.ser
-rw-r--r-- 1 root root 3.4M Sep  5 17:03 SerialisedSampleSender8166392983179754462.ser

When the test is finished, each of the 6 files are transmitted from slave to the master by network, so each listener can do his graphs.

The problem here is when I check the content of each files: they are identical ! those files have the same data inside each of them !
I think this could be optimized, because the 6 listeners could read the same "SerializedSampleSender" file content.
If we manage to code this, this would divide by 6 the network usage between slave to master with the same result :)

Thanks for reading !