Queries per second - graphhopper-web

I am using a python script with HTTPConnectionPool (and multi-threading) to get routes (in Britain - all within 20 miles of each other) at around 3000 per second:

route?point={2}%2C{3}&point={4}%2C{5}&vehicle=car&calc_points=false&instructions=false

I was curious what kind of queries per second rate is possible with the server on a standard computer? And whether there are any tips for improving this?

Thanks!

Why not just try it :slight_smile: ? As this will depend not only on the hardware but also on the route length, vehicle, …

There is a limitation like 100 threads for jetty but this is configurable, I think and with it I was able to get like 600-700 requests per second for rather longish car routes (>100km) but there should be no software limits. Please share your findings :slight_smile:

For UK routes (within 20 miles) I am hitting around 3500; however France was a bit faster (with 4500).

1 Like

Thanks for letting us know.

BTW: there is an inbuilt QueryTorture class which can be called from CLI using GH log files:

./graphhopper.sh torture osm.pbf <additional params>

where additional params can be logfile, workers (default 1), baseurl e.g. localhost, maxQueries (default 1K), timeout (default 3s)