Increase static.o.o apache thread limits

Currently we're using the default of 150 work threads as the limit for
the entire static.o.o set of vhosts. During special events like
openstack releases we're seeing all of these slots fill up. Adapt the
configuration from the etherpad apache connection tuning file to static
to bump this up to 1024 total client requests. We do this via 3 to 32
processes made up of 32 threads earch. Giving us a minimum of 96
connection slots and a maximum of 1024.

Change-Id: Ifaffab0caaf665b75a1fdc05444f67bfd59c0f6a
This commit is contained in:
Clark Boylan
2025-10-03 08:14:13 -07:00
parent b0a115c055
commit b8968acb10

View File

@@ -1,14 +1,41 @@
# worker MPM
# MaxConnectionsPerChild: maximum number of requests a server process serves
# StartServers: initial number of server processes to start
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadLimit: ThreadsPerChild can be changed to this maximum value during a
# graceful restart. ThreadLimit can only be changed by stopping
# and starting Apache.
# ThreadsPerChild: constant number of worker threads in each server process
# MaxClients: maximum number of simultaneous client connections
#
# We've noticed that our mirrors occasionally have stale workers. This leads
# to ssl certs not being refreshed properly after reload and we've also seen
# ssl connections to round robin backend services have trouble. Restarting
# the workers so that they load up new info seems to fix this. Try and force
# that to happen regularly with a connections limit per worker.
#
# We also notice that after events like OpenStack releases clients that slow
# read are able to fill up all of the 150 default connection slots to our
# server. This prevents other clients from being able to make requests
# quickly. System load seems reasonable so we bump that up quite a bit.
<IfModule mpm_worker_module>
MaxConnectionsPerChild 8192
ServerLimit 32
StartServers 3
MinSpareThreads 32
MaxSpareThreads 96
ThreadLimit 64
ThreadsPerChild 32
MaxClients 1024
</IfModule>
<IfModule mpm_event_module>
MaxConnectionsPerChild 8192
ServerLimit 32
StartServers 3
MinSpareThreads 32
MaxSpareThreads 96
ThreadLimit 64
ThreadsPerChild 32
MaxClients 1024
</IfModule>