Running flask + gevent + requests not serving 'concurrently'
I believe the issue is likely that you forgot to monkey patch. This makes it so that all of the normally blocking calls become non-blocking calls that utilize greenlets. To do this just put this code before you call anything else.
from gevent import monkey; monkey.patch_all()
Go to http://www.gevent.org/intro.html#monkey-patching for more on this.