[Geocoding] Removing HTTP (man in the middle) for performance

Sarah Hoffmann lonvia at denofr.de
Thu May 2 20:04:43 UTC 2019


Hi Mark,

On Tue, Apr 30, 2019 at 07:59:13AM +0300, Mark Davies wrote:
> Hi All
> 
> Following on from some excellent advice from Sarah Hoffmann, I have been
> able to increase the server to handle a greater amount of requests per
> second
> 
> I have now noticed the app that requests reverse geo-code is the bottle
> neck, and after a bunch of tests it appears the time it takes to return the
> result is the biggest issue (limiting concurrent threads)
> Therefore I need to reduce the amount of time it takes nominatim to return
> the result

If the limited number of concurrent threads is the bottleneck,
then I would look into that first. Or think about buying a
second machine.

> 
> From my tests it takes around 270-500ms for the calling app to get the
> result, I've searched online and seen Sarah also mention the HTTP portion
> "main in the middle" is the biggest slow down.
> So my question is: what options do I have to cut out the man in the middle,
> the HTTP portion?

Sounds rather like a network problem to me which you are trying
to fix on the wrong end.

> 
> The calling server/app is windows 2016/ .Net App, and its not an option for
> everything to go on one server, but I plan to move it on a LAN, currently
> its hitting public IP
> 
> Some of my thoughts on cutting out the HTTP portion was
> 1. Host the reverse php code on windows, connect the windows php code to
> nominatim DB (all on LAN)

The Nominatim DB would still need to run on a different server because
it needs to run under Linux. So this solution hardly cuts network traffic.

> 2. connect to DB directly from windows, and do same DB query as nominatim

Same problem. And you will find that there is no single query you can
run.


Sarah



More information about the Geocoding mailing list