Skip to content

Instantly share code, notes, and snippets.

@wrunk
Created May 27, 2011 02:54
Show Gist options
  • Save wrunk/994556 to your computer and use it in GitHub Desktop.
Save wrunk/994556 to your computer and use it in GitHub Desktop.
Simple Python script to run a django app using eventlet
#!/usr/bin/env python
#
# A simple eventlet script that will run a django app
#
import eventlet
eventlet.monkey_patch()
from eventlet import wsgi
import django.core.handlers.wsgi
from optparse import OptionParser
import os
MAX_GREEN_THREADS = 25
def run_wsgi_app(app, port=8080):
''' Run a wsgi compatible app using eventlet '''
print "starting eventlet server on port %i" % port
wsgi.server(
eventlet.listen(('', port)),
app,
max_size=MAX_GREEN_THREADS,
)
if __name__ == "__main__":
parser = OptionParser()
parser.add_option(
"-p", "--port", type=int, help="Port to run on", default=8080
)
parser.add_option(
"-s", "--settings", type=str,
help="DJANGO_SETTINGS_MODULE", default=""
)
parser.add_option(
"-t", "--threads", type=int,
help="Maximum green threads to use", default=25
)
(options, args) = parser.parse_args()
if options.settings:
os.environ['DJANGO_SETTINGS_MODULE'] = options.settings
run_wsgi_app(django.core.handlers.wsgi.WSGIHandler(), options.port)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment