├── requirements.txt ├── .gitignore ├── README.rst ├── messager.py ├── simple.py ├── simple_longpoll.py ├── better_responses.py ├── pusher.py └── LICENSE /requirements.txt: -------------------------------------------------------------------------------- 1 | gevent 2 | redis 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | env 2 | .DS_Store 3 | *.pyc 4 | -------------------------------------------------------------------------------- /README.rst: -------------------------------------------------------------------------------- 1 | Supporting materials for my blog post on WSGI long-polling apps with gevent at http://toastdriven.com/blog/2011/jul/31/gevent-long-polling-you/. 2 | -------------------------------------------------------------------------------- /messager.py: -------------------------------------------------------------------------------- 1 | import redis 2 | 3 | server = redis.Redis(host='localhost', port=6379, db=0) 4 | 5 | while True: 6 | message = raw_input("What to say: ") 7 | server.publish('messages', message) 8 | 9 | if message == 'quit': 10 | break 11 | -------------------------------------------------------------------------------- /simple.py: -------------------------------------------------------------------------------- 1 | from gevent import pywsgi 2 | 3 | 4 | def handle(environ, start_response): 5 | start_response('200 OK', [('Content-Type', 'text/html')]) 6 | yield '