cloudfoundry / cloudfoundry/cloud_controller_ng
Tune an example endpoint as good as possible
Nobody has claimed this yet.
- Dominant language
- Ruby
- Stars
- 207
- Forks
- 373
- Avg merge
- 2d 12h
- Merged PRs (30d)
- 56
Description
Issue
Tune an example endpoint (/v3/security_groups for which we have perf and load tests) as good as possible (SQL queries even if this means 'bypassing' CC design)
Context
To compare against the GoLang PoC we want a common endpoint to be also optimized as good as possible to run load test also against the ruby implementation.
Also permission checks could be done in a single query with the actual one like we did it in GoLang PoC (lib/cloud_controller/permissions.rb, lib/cloud_controller/membership.rb)
One could also profile the endpoint with rbspy to find hotspots of slow gems or functions
Acceptance Criteria
- We have a endpoint optimized as good as we can on a seperate branch
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the /v3/security_groups endpoint and its existing performance and load tests, then inspect lib/cloud_controller/permissions.rb and lib/cloud_controller/membership.rb. Use rbspy if useful to identify hotspots and compare the Ruby endpoint with the Go PoC; done means the endpoint is optimized as far as practical on a separate branch.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, ruby
- Domain
- api, backend, performance
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100