deb-keystone/keystone
Peter Feiner 3580c2af1b enable multiple keystone-all worker processes
Fixes bug 1157261.

Since the majority of the work keystone does is cryptographic
calculations and filtering database records, keystone is CPU-bound.
Given that a keystone-all process has only one thread (i.e.,
eventlet's thread), keystone-all's throughput is limited to the
throughput of a single CPU core. To increase keystone-all's
throughput, we need to increase its CPU parallelism, which entails
running more keystone-all processes.

This patch adds two configuration options, public_workers=N and
admin_workers=N, that determine the number of keystone-all processes
that handle requests for keystone's public and admin WSGI applications
respectively.

Note that simply running keystone-all multiple times won't work
because care has to be taken for all of the worker processes to be
using the same socket (i.e., listen() then fork()).

DocImpact

Change-Id: If74f13bc2898e880649ee809967f5b5859b793c6
Co-Authored-By: Stuart McLaren <stuart.mclaren@hp.com>
2014-06-13 10:21:01 +00:00
..
assignment Merge "Remove obsolete note from ldap" 2014-06-09 10:08:56 +00:00
auth Make sure scoping to the project of a disabled domain result in 401. 2014-05-29 09:50:17 -07:00
catalog Fixes duplicated DELETE queries on SQL backends 2014-05-28 16:26:05 +02:00
common enable multiple keystone-all worker processes 2014-06-13 10:21:01 +00:00
contrib Fixes duplicated DELETE queries on SQL backends 2014-05-28 16:26:05 +02:00
credential Fixed some typos throughout the codebase 2014-05-01 07:16:02 -07:00
hacking Fixed some typos throughout the codebase 2014-05-01 07:16:02 -07:00
identity Merge "Code which gets and deletes elements of tree was moved to one method" 2014-06-09 01:48:52 +00:00
locale Imported Translations from Transifex 2014-05-28 06:00:23 +00:00
middleware Fixed the size limit tests in Python 3 2014-05-05 11:27:42 +00:00
openstack Sync service module from oslo-incubator 2014-06-09 17:08:32 +00:00
policy Removes unused db_sync methods 2014-04-02 20:15:40 +00:00
tests enable multiple keystone-all worker processes 2014-06-13 10:21:01 +00:00
token Merge "Compressed Token Provider" 2014-06-06 06:36:44 +00:00
trust Refactor create_trust for readability 2014-05-06 12:56:40 +03:00
__init__.py Revert "Disable eventlet monkey-patching of DNS" 2013-05-10 10:24:48 -04:00
backends.py Isolate backend loading 2014-04-16 15:13:20 +10:00
clean.py Uses explicit imports for _ 2014-03-18 01:23:21 -07:00
cli.py Token Revocation Extension 2014-03-04 13:42:28 -05:00
config.py Merge "Remove vim header" 2014-02-13 03:43:19 +00:00
controllers.py Fix version links to docs.openstack.org 2014-05-07 21:45:17 +02:00
exception.py indicate that sensitive messages can be disabled 2014-05-27 15:54:02 -05:00
notifications.py Replace magic value 'service/security' in CadfNotificationWrapper 2014-05-26 11:32:29 -04:00
routers.py Remove vim header 2014-02-08 23:54:04 +08:00
service.py Isolate backend loading 2014-04-16 15:13:20 +10:00