Merge pull request #793 from gpodder/remove-advertise
[mygpo.git] / conf / gunicorn.conf.py
blobc59406163771f45b4ae662e621ddcc509b6d4a22
1 # import multiprocessing
2 import os
4 bind = "unix:/tmp/mygpo.sock"
5 #workers = multiprocessing.cpu_count()
6 workers = 3
8 # The maximum number of requests a worker will process before restarting.
9 # max_requests = 1000
11 log_dir = os.getenv("LOGGING_DIR_GUNICRON", "/var/log/gunicorn/")
12 errorlog = log_dir + "error.log"
13 accesslog = log_dir + "access.log"
14 loglevel = "info"
15 access_log_format = '%(h)s %(l)s %(u)s %(t)s "%(r)s" %(s)s %(b)s %(T)s "%(f)s" "%(a)s"'
17 timeout = 120
18 graceful_timeout = 60
21 def get_bool(name, default):
22 return os.getenv(name, str(default)).lower() == "true"
25 def _post_fork_handler(server, worker):
26 patch_psycopg()
27 worker.log.info("Made Psycopg2 Green")
30 # check if we want to use gevent
31 _USE_GEVENT = get_bool("USE_GEVENT", False)
34 try:
35 # check if we *can* use gevent
36 from psycogreen.gevent import patch_psycopg
37 except ImportError:
38 _USE_GEVENT = False
41 if _USE_GEVENT:
42 # Active gevent-related settings
44 workers = 9
45 worker_connections = 100
46 worker_class = "gevent"
48 # activate the handler
49 post_fork = _post_fork_handler
50 else:
51 thread = 3
52 worker_class = "gthread"