Open quantenschaum opened 2 months ago
Very valid point. Unfortunately currently there is no easy way of separating the requests for a plugin (like mapproxy) from the other requests. So this would need some further investigation. For now you could disable the network access for mapproxy if you run into trouble - this will prevent external tile access completely. You could add the mpControl widget - that directly allows to set the network mode.
:thinking: But ocharts uses a separate server for the map tiles on a different port. MapProxy could do it the same way?
The problem exists when online, when a tile source is slow.
Is it possible to limit the requests handled on the mapproxy endpoint, so that there are always some free slots for avnav itself? Or lower the timeout for this endpoint, so that avnav returns 504 when MapProxy doen't respond within a certain time?
Ocharts runs an own server... To change the mapproxy integration it would need some bigger rewrite of the plugin. And handling an own process and a separate port introduces a couple of issues ( conflicts with other applications...). Maybe a shorter timeout will already help. I will have a look...
It seems like that if MapProxy hangs (waiting for upstream tiles very long), this seems to block AvNav's webserver as well. In that case no requests to AvNav get answered and AvNav effectively seems dead.
Refreshing the webapp (F5) does not work of course. You just to wait until MapProxy times out.
Maybe MapProxy should run in a separate (sub)process or in a different thread.