Skip to content
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

Implement exponential backoff for SB operations (CC v3 API) #2667

Conversation

svkrieger
Copy link
Contributor

@svkrieger svkrieger commented Feb 8, 2022

Thanks for contributing to cloud_controller_ng. To speed up the process of reviewing your pull request please provide us with:

  • A short explanation of the proposed change:
    Introduce a new parameter broker_client_async_poll_exponential_backoff_rate which lets users configure exponential backoff for service related polling jobs. This includes the creation, update and deletion of service instances and the creation and deletion of service credential bindings.

  • An explanation of the use cases your change solves
    The CC already offers two parameters with which the polling interval broker_client_default_async_poll_interval_seconds and the polling duration broker_client_max_async_poll_duration_minutes can be configured. Though, this is not enough to prevent that the CC can be overloaded by a single user e.g. by creating many service instances, while the broker needs a lot of time to handle the request. This will result in many polling jobs, which overload the worker processes.

The newly introduced parameter broker_client_async_poll_exponential_backoff_rate, by default, does not change the current behaviour as it is set to 1.0, which means there is no exponential backoff. When set to a higher number, the time until each re-enqueued job will be run will increase and therefore lead to much less polling jobs, which need to be run by the worker processes.

  • I have reviewed the contributing guide

  • I have viewed, signed, and submitted the Contributor License Agreement

  • I have made this pull request to the main branch

  • I have run all the unit tests using bundle exec rake

  • I have run CF Acceptance Tests

svkrieger and others added 2 commits February 9, 2022 13:23
Added a config parameter to the cloud_controller which let's users configure whether an exponential backoff, and with which rate, shall be used for service fetch operations.
Defaults to 1.0, which means there is no exponential backoff.

Co-authored-by: Aftab Alam <[email protected]>
@svkrieger svkrieger force-pushed the implement-exponential-backoff-for-sb-operations branch from cdb45cf to d05b5af Compare February 9, 2022 12:24
@svkrieger svkrieger force-pushed the implement-exponential-backoff-for-sb-operations branch from 4bce4e7 to 7c7bc2b Compare February 10, 2022 16:38
@philippthun philippthun changed the title Implement exponential backoff for SB operations Implement exponential backoff for SB operations (CC v3 API) Feb 10, 2022
@svkrieger svkrieger marked this pull request as ready for review February 11, 2022 15:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants