apache wsgi: Exchange defaults for workers and threads

Due to Python's GIL [1], we can't use multiple threads for running
OpenStack services without a performance penalty, since the execution
ends up serialized, which defeats the purpose.

Instead, we should use several processes, since this approach doesn't
have this limitation.

[1] https://wiki.python.org/moin/GlobalInterpreterLock

Change-Id: Id0a4d32e6b9f039b08ace5519fb64468000ecfee
This commit is contained in:
Juan Antonio Osorio Robles 2017-10-13 08:52:43 +03:00 committed by Mohammed Naser
parent 04a901771c
commit 19d93ead0a
2 changed files with 7 additions and 7 deletions

View File

@ -31,7 +31,7 @@
#
# [*workers*]
# Number of WSGI workers to spawn.
# Optional. Defaults to 1
# Optional. Defaults to $::os_workers
#
# [*ssl_cert*]
# (optional) Path to SSL certificate
@ -67,7 +67,7 @@
#
# [*threads*]
# (optional) The number of threads for the vhost.
# Defaults to $::os_workers
# Defaults to 1
#
# [*wsgi_process_display_name*]
# (optional) Name of the WSGI process display-name.
@ -109,7 +109,7 @@ class barbican::wsgi::apache (
$bind_host = undef,
$public_path = '/',
$ssl = true,
$workers = 1,
$workers = $::os_workers,
$ssl_cert = undef,
$ssl_key = undef,
$ssl_chain = undef,
@ -118,7 +118,7 @@ class barbican::wsgi::apache (
$ssl_crl = undef,
$ssl_certs_dir = undef,
$wsgi_process_display_name = undef,
$threads = $::os_workers,
$threads = 1,
$priority = '10',
$access_log_file = false,
$access_log_format = false,

View File

@ -33,9 +33,9 @@ describe 'barbican::wsgi::apache' do
:path => '/',
:servername => facts[:fqdn],
:ssl => true,
:threads => facts[:os_workers],
:threads => 1,
:user => 'barbican',
:workers => 1,
:workers => facts[:os_workers],
:wsgi_daemon_process => 'barbican-api',
:wsgi_process_group => 'barbican-api',
:wsgi_script_dir => platform_params[:wsgi_script_path],
@ -71,7 +71,7 @@ describe 'barbican::wsgi::apache' do
:path => '/',
:servername => 'dummy.host',
:ssl => false,
:threads => facts[:os_workers],
:threads => 1,
:user => 'barbican',
:workers => 37,
:wsgi_daemon_process => 'barbican-api',