I was using Nginx for static files and a reverse proxy (+balancer) to CherryPy until recently. Now switched to Nginx + uWSGI for everything and couldn't be happier. Nginx is very fast, even when on-the-fly Gzip is enabled.
Initial setup was super tricky (Nginx in FreeBSD port doesn't ship with uWSGI support and XML config somehow doesn't work, so I have to use Python config which the documentation is lacking) but it has been doing its job ever since.
uWSGI is fast, has low memory footprint (a bit above Gevent/FAPWS) and is very reliable by itself. I'd recommend you to at least try it. The uWSGI documentation[1] was what got me interested.
[1]: http://projects.unbit.it/uwsgi/wiki/Doc
(By the way, I use a patch on this Chinese blog: http://www.indexofire.com/blog/?p=605 to build Nginx with uWSGI support on a FreeBSD. I made this: http://aur.archlinux.org/packages.php?ID=37857 for running on Arch. /shameless plug)