-
Notifications
You must be signed in to change notification settings - Fork 313
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Clarify latency-vs-service-time FAQ #1133
Clarify latency-vs-service-time FAQ #1133
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for this clarification! This topic pops up frequently and I think a more engineering/factual explanation wrt how Rally builds the request traffic actually helps.
I left a comment, mostly for discussion; after all I think, for the sake of keeping the explanation simple, we should just stick to target-throughput as done in this PR.
docs/faq.rst
Outdated
generate and send the next request. In this mode ``latency`` and | ||
``service_time`` are identical. | ||
|
||
* **Throughput-throttled mode**: You may prefer to run benchmarks with a target |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Internally Rally uses a concept called "Schedule". There are different ways to alter the traffic that Rally generates by issuing requests:
- target-throughput (in requests/sec)
- target-interval (inverse of target-throughput i.e. amount of secs to wait per request)
- use poisson distribution or a custom schedule of your own
As all of those actually end up influencing the schedule that Rally will use to issue requests, I wonder if we should be talking about the schedule here briefly and adjust wording below, e.g. in line 51/52 instead of "according to this target" "according to the schedule".
However ... I think this concept is tricky by itself and by trying to provide a very generic answer (as I suggest) we might be confusing the reader, whereas the description in this PR is easier to understand by using a concrete example (via target throughput). @danielmitterdorfer WDYT?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ack, thanks for the clarification. I'll try and generify the wording and maybe link to the schedule docs if I can work out how.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I pushed some more generic words in 18ae7f2 which I don't think make it any more complicated.
I tried to work out how to cross-reference the docs on the schedule
bit of a track but timed out after a couple of minutes of trying to understand what on earth the Sphinx docs were trying to tell me. A cross-ref on the first occurrence of the word schedule
would be very helpful IMO, could someone else push an update that adds one?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
could someone else push an update that adds one?
@DaveCTurner I've added one; it's available if you merge the latest master into your branch. You can use it as follows:
:ref:`your custom link text here <track_choose_schedule>`
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @danielmitterdorfer, done in 4f999a7.
With this commit we add a new label to the section that explains a schedule in Rally so it can be referenced in other parts of the docs. Relates #1133
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for doing this! The wording sounds good me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM thank you for this clarification!
I found the answer to the FAQ on latency vs service time unclear. It doesn't really define what
latency
means in throughput-throttled mode, and I'm not sure I fully understand the analogy it uses. I'm opening this to propose some alternative words, based on my interpretation of the previous answer, but I wouldn't be surprised if I'm still misunderstanding the details.