feat(projected-usage): Create a new endpoint for the projected usage calculation #4124
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.
Context
The
current_usage
endpoint is frequently called across the application. Adding the projected usage calculation was causing significant memory spikes due to the high request volume, impacting application performance.By moving the expensive calculation to a dedicated endpoint, we ensure that fetching basic usage remains fast and stable, while still providing the projection data when it's explicitly needed. This resolves the memory issues and improves overall stability.
Description
Creates a new endpoint,
GET /customers/:external_customer_id/projected_usage
, to handle the computationally intensive projected usage calculation.Reverts the existing
/customers/:external_customer_id/current_usage
endpoint to its original, lightweight state by removing the projection logic.