-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
(#418) ENG-2810: Rate limiter for remote bootstrap
Summary: Currently we don't have a mechanism to prioritize network traffic. So if a tablet gets moved during a period of high read/writes ops, our performance will degrade during remote bootstraps. With this change we provide a throttling mechanism that can be controlled with the flag remote_boostrap_rate_limit_bytes_per_sec. This is a per-node global rate for receiving and sending. So no matter how many concurrent remote bootstraps are happening, the max bandwidth utilization for sending or receiving will not exceed the specified limit. For example, if remote_boostrap_rate_limit_bytes_per_sec is 10MB/s, then the maximum bandwidth for sending data to other nodes will not exceed 10MB/s. At the same time, the maximum bandwidth for receiving data in the same node will not exceed 10MB/s. So the maximum bandwidth per node allocated for remote bootstrap traffic will be 2 * remote_boostrap_rate_limit_bytes_per_sec. To disable throttling, set remote_boostrap_rate_limit_bytes_per_sec = 0. Test Plan: new unit tests Reviewers: bharat, venkatesh, mikhail, sergei Reviewed By: bharat, venkatesh, sergei Subscribers: kannan, ybase, bogdan Differential Revision: https://phabricator.dev.yugabyte.com/D4608
- Loading branch information
Showing
11 changed files
with
629 additions
and
18 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.