Mutiprocess Keystone Service

Registered by Huang Zhiteng

Currently Keystone services only spawn green threads to handle auth requests. Due to python's limitation, all green threads are actually being scheduled within one system process, which results in only one processor core can be utilized. When requests concurrency increase, the throughput doesn't increase because requests pile-up and the response time of each request goes-up very quickly. This can be a serious problem since keystone is required for other OpenStack services, such as Nova, Glance, Swift. Therefore, keystone's performance(throughput) is critical to the whole solution's performance and user experience. I'd propose configurable multi-process (workers) keystone services to tackle this issue. Similar implementation has been added to Swift, Glance and proposed to Nova.

Blueprint information

Status:
Complete
Approver:
Joseph Heck
Priority:
Medium
Drafter:
Huang Zhiteng
Direction:
Needs approval
Assignee:
Huang Zhiteng
Definition:
Obsolete
Series goal:
Proposed for folsom
Implementation:
Needs Code Review
Milestone target:
None
Started by
Huang Zhiteng
Completed by
Joseph Heck

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/multiprocess-keystone-service,n,z

Addressed by: https://review.openstack.org/7017
    blueprint multiprocess-keystone-service

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.