Cache parsed RSA key objects in UaaVerificationKeys#5272
Merged
johha merged 1 commit intoJul 8, 2026
Conversation
Previously, `format_keys` stored raw PEM strings. On every request, `CF::UAA::TokenCoder.new(pkey: pem_string)` re-parsed the RSA key via `OpenSSL::PKey::RSA#initialize`, consuming ~25% CPU under load. Parse the RSA key once when keys are fetched from UAA (every 30s) and cache the `OpenSSL::PKey::RSA` object directly.
ari-wg-gitbot
added a commit
to cloudfoundry/capi-release
that referenced
this pull request
Jul 8, 2026
Changes in cloud_controller_ng:
- Cache parsed RSA key objects in UaaVerificationKeys
PR: cloudfoundry/cloud_controller_ng#5272
Author: serdar özer <serdar.oezer@sap.com>
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Previously,
format_keysstored raw PEM strings. On every request,CF::UAA::TokenCoder.new(pkey: pem_string)re-parsed the RSA key viaOpenSSL::PKey::RSA#initialize, consuming ~25% CPU under load.Parse the RSA key once when keys are fetched from UAA (every 30s) and cache the
OpenSSL::PKey::RSAobject directly.I have reviewed the contributing guide
I have viewed, signed, and submitted the Contributor License Agreement
I have made this pull request to the
mainbranchI have run all the unit tests using
bundle exec rakeI have run CF Acceptance Tests