Hi Stephan, Florian, all, while the last release speed up simple-page serving it helped more for the root/pypi case than the private indexes. I just did some benchmarking for private indexes with roughly 200 release file entries. I got around 34 requests per second on my machine and the attached proflog-2.4.0 profile. Most of the time is spent in "get_linkstore_perstage" and "get_versiondata_perstage" because we store each version under its own key, resulting in hundreds of db-accesses and dependent processing. So I introduced a per-project db-persisted "simplelinks" cache similar to the root/pypi one and got 133 requests per second, roughly 4 times better, also see "proflog-simplecache" profile attached. There are still some easy improvements that can be made on top. The diff is quite simple but it would currently require an export-import: https://bitbucket.org/hpk42/devpi/branch/simplecache#diff It's likely possible to avoid the export/import if neccessary. If you'd like to repeat the measurements you can import this devpi-server state: http://merlinux.eu/~hpk/exp1.tar.gz either from devpi-server-2.4.0 or from the branch and after server-startup run: ab -H "User-Agent: pip/6.0" -n 100 http://localhost:3141/hpk/dev/+simple/dddttt The "dddttt" project also has releases on pypi.python.org. Maybe after merging the simplecache branch we could also cleanup how we internally treat projectnames: always use normalized names for keys in the DB so that we can simply compute them without any db-access (currently we need to access the database to get from a name to the "real projectname", e.g. to "Django" from "django"). It's a long standing issue to simplify this and we would anyway require an export-import cycle for it. best, holger -- about me: http://holgerkrekel.net/about-me/ contracting: http://merlinux.eu