09934718f7
shade/openstacksdk has implemented client-side rate limiting on top of keystoneauth for ages and uses it extensively in nodepool. As part of an effort to refactor that code a new approach was devised which was much simpler and therfore suitable for inclusion in keystoneauth directly. The underlying goal is two-fold, but fundamentally is about allowing a user to add some settings so that they can avoid slamming their cloud. First, allow a user to express that they never want to exceed a given rate. Second, allow a user to limit the number of concurrent requests allowed to be in flight. The settings and logic are added to Adapter and not Session so that the settings can easily be per-service. There is no need to block requests to nova on a neutron rate limit, after all. Co-Authored-By: Ian Wienand <iwienand@redhat.com> Needed-By: https://review.openstack.org/604926 Change-Id: Ic831e03a37d804f45b7ee58c87f92fa0f4411ad8
11 lines
471 B
YAML
11 lines
471 B
YAML
---
|
|
features:
|
|
- |
|
|
Support added for client-side rate limiting. Two new parameters now
|
|
exist for ``keystoneauth1.adapter.Adapter``. ``rate`` expresses a
|
|
maximum rate at which to execute requests. ``parallel_limit`` allows
|
|
for the creation of a semaphore to control the maximum number of
|
|
requests that can be active at any one given point in time.
|
|
Both default to ``None`` which has the normal behavior or not limiting
|
|
requests in any manner.
|