diff options
author | Clay Gerrard <clay.gerrard@gmail.com> | 2021-12-07 17:19:54 -0600 |
---|---|---|
committer | Tim Burke <tim.burke@gmail.com> | 2022-01-06 12:47:09 -0800 |
commit | de888629817a2a326b6e8dc66edb0ce3168818a7 (patch) | |
tree | a5e97452ab2ea056d7f09764606b8c85b2f6d7e1 /etc | |
parent | 1859f2e161f396023d8328489fb4b88c303797a9 (diff) | |
download | swift-de888629817a2a326b6e8dc66edb0ce3168818a7.tar.gz |
Finer grained ratelimit for update
Throw our stream of async_pendings through a hash ring; if the virtual
bucket gets hot just start leaving the updates on the floor and move on.
It's off by default; and if you use it you're probably going to leave a
bunch of async updates pointed at a small set of containers in the queue
for the next sweep every sweep (so maybe turn it off at some point)
Co-Authored-By: Alistair Coles <alistairncoles@gmail.com>
Change-Id: Idef25cd6026b02c1b5c10a9816c8c6cbe505e7ed
Diffstat (limited to 'etc')
-rw-r--r-- | etc/object-server.conf-sample | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/etc/object-server.conf-sample b/etc/object-server.conf-sample index e9557b6c2..5329bca8f 100644 --- a/etc/object-server.conf-sample +++ b/etc/object-server.conf-sample @@ -473,6 +473,16 @@ use = egg:swift#recon # Send at most this many object updates per second # objects_per_second = 50 # +# Send at most this many object updates per bucket per second. The value must +# be a float greater than or equal to 0. Set to 0 for unlimited. +# max_objects_per_container_per_second = 0 +# +# The per_container ratelimit implementation uses a hashring to constrain +# memory requirements. Orders of magnitude more buckets will use (nominally) +# more memory, but will ratelimit smaller groups of containers. The value must +# be an integer greater than 0. +# per_container_ratelimit_buckets = 1000 +# # slowdown will sleep that amount between objects. Deprecated; use # objects_per_second instead. # slowdown = 0.01 |