from couchdbkit import Server from couchdbkit.consumer import Consumer from time import sleep from gevent import monkey monkey.patch_all() import gevent def print_event(*args, **kwargs): print('EVENT: %s - %s' % (args, kwargs)) s = Server(uri='http://localhost:5984') db = s.get_or_create_db('a_test_db') c = Consumer(db, backend="gevent") c.wait_async(print_event, heartbeat=True) while True: try: gevent.sleep(0.1) except (KeyboardInterrupt, SystemExit): break result : $ python test.py EVENT: ('{"seq":3,"id":"d1eca14fb05613c5be30b518c4000768","changes":[{"rev":"3-825cb35de44c433bfb2df415563a19de"}]}',) - {} EVENT: ('{"seq":4,"id":"d1eca14fb05613c5be30b518c4000c66","changes":[{"rev":"1-967a00dff5e02add41819138abb3284d"}]}',) - {}