Reduce the number of token checks made during networking calls
Due to the current implementation of get_client() for quantum calls, not only does each quantum connection require a new token check, but also quantum clients are created every time, even if they use the same credentials and checks the credentials separately on each call.
Caching the client would allow making fewer token checks and reduce the access time in general.
For example, currently each request for instance metadata will result in 4 token checks in a row. Another request needs anoter 4, etc.
This could be reduced to only 1 request per lifetime of a token, so subsequent requests become keystone-free.
One new issue of this scheme would be that changing endpoints may result in failed requests until the token is invalidated. On the other hand, this is not a problem specific to this scenario, as the endpoint may change between the get_token call and another request - {quantum,
Blueprint information
- Status:
- Complete
- Approver:
- Matt Riedemann
- Priority:
- Medium
- Drafter:
- None
- Direction:
- Approved
- Assignee:
- None
- Definition:
- Approved
- Series goal:
- Accepted for kilo
- Implementation:
- Implemented
- Milestone target:
- None
- Started by
- Matt Riedemann
- Completed by
- Matt Riedemann
Related branches
Related bugs
Sprints
Whiteboard
Doesn't patch https:/
Gerrit topic: https:/
Addressed by: https:/
Delegate authentication to quantumclient
Gerrit topic: https:/
Gerrit topic: https:/
Addressed by: https:/
Delegate authentication to quantumclient
Gerrit topic: https:/
Marking this blueprint as definition: Drafting. If you are still working on this, please re-submit via nova-specs. If not, please mark as obsolete, and add a quick comment to describe why. --johnthetubaguy (20th April 2014)
I'm going to mark this as complete, there were several changes over time to add caching support to the neutron module in nova. Also, the keystone v3 session code was added in kilo with https:/