Hi Robert,
> Den 26. sep. 2016 kl. 03.03 skrev Robert Roskam <
raider...@gmail.com>:
>
> > The unit in the second graph is requests per minute, which is inconsistent since the first graph is requests per second. This also makes comparison difficult. Also, it doesn't actually show the requests per minute value unless you break out a calculator, since the X axis stops at 50 seconds.
>
> So is your request basically for me to give the slope on each one so that you can interpolate the results from one graph to the other?
One way to compare results from the two tests would be to find out how far from max throughput on graph #2 you measured the latency from graph #1. It's difficult for me to add a 300 rps line in graph #2 because the 1-second mark on the X-axis is impossible to read, and the 1-minute mark is off the axis. Does that make sense?
> > Also, the lines in the second graph are suspiciously linear - how many measurements were made, at which points in time, what is the jitter? Just show the actual measurements as dots, then I can live with the straight line. That would also show any effects of the autothrottle algorithm.
>
> I'll have to regather that data. I had not logged every single response. I was aggregating the results every 5 seconds. I can resample this one.
It's not a big deal, it's just that the straight lines are hiding a lot of possibly interesting information in the distribution of the sample data - is it really linear, what's the variability, does the server slow to a crawl after 15 seconds, etc. Thanks for the attached graph, which clears a lot of this up.
> > Finally, I have a hard time understanding the latency values - the config shows 1 worker, so I'm assuming seial output. But for Gunicorn, the graph shows ~80.000 rpm which corresponds to a latency of 0,75ms, while the text says 6ms. Likewise, according to the graph, Redis has a latency of 1,7ms and IPC 6ms, which does not align with the text. Is this the effect of an async I/O behind the scenes, og are there multiple threads within the worker?
>
> I'm pressed to understand what you're trying to say. I'm not sure where you got the 80 (or is it 80 thousand?) rps from. If you're trying to sum the values of gunicorn through time, I guess that exposes something else that I either misrepresented or said incorrectly. The values presented are accumulated. Perhaps, that's not the correct way to present this.
Sorry, I'm in a locale where we use '.' as thousands separator and ',' as decimal separator. I'll switch to American notation now :-)
I read the blue line for Gunicorn in graph #2 as having returned in total 80.000 requests after a duration 60 seconds (just over the 75,000 mark after ca. 55 seconds). Is that an incorrect interpretation of the graph? If not, then 60 seconds / 80,000 requests * 1000 = 0.75 ms per request, if the requests are processed in serial.
Erik