Upping the processes increases the memory usage quite a lot. I tried 16 procs and 15 threads and ran out.
On Monday, February 17, 2020 at 7:13:24 PM UTC-7, Andrew Charles wrote: > > Ubuntu 18.04.04 > Apache 2.4.29 (event) > mod_wsgi 4.5.17 > Python 3.6.8 > Django 2.2.10 > > WSGIScriptAlias / ...wsgi.py > WSGIDaemonProcess name processes=8 threads=30 queue-timeout=45 socket- > timeout=60 request-timeout=60 inactivity-timeout=0 startup-timeout=45 > deadlock-timeout=60 graceful-timeout=15 eviction-timeout=0 python-path=... > base/ python-home=...virtualenv/ > WSGIProcessGroup name > > > AWS ec2 c5.xlarge 4 CPUs 8GB Mem (ASG autoscaling between 4 and 10 > instances) behind an ELB > Averaging 100,000,000 requests per day (107 mil today) > > We have a few django api endpoints that are very simple, which only hit a > local or separate redis cache, no db hits. We relay data to firehose but > use django-q to offload those tasks. Requests take around 200ms but a fair > number are 400-500ms. The ELB reports the average as 60ms. Each instances > uses between 4-5GB mem. I've been trying to get more performance out of our > instances and reduce our 5XXs. I previously tried 3 processes and the > default (15) threads. I've been researching the best ways to change > settings but it seems like it's unique to every setup and there's no easy > rules to follow. I'm looking for suggestions or at least someone to tell me > I'm on the right track. > -- You received this message because you are subscribed to the Google Groups "modwsgi" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/modwsgi/d52202b0-1641-40ce-a903-f9c5e252223d%40googlegroups.com.
