Thank you, so far so good!
Please enlighten me regarding one moment: if I run graphhopper engine with Uzbekistan data in a local server no need for apiKey and any connection to graphhoppers server, right?
I want to establish small routing service with osm data + amended my data running on Geoserver + PostGIS/Postgres. What is the correct foundation for scalable and fast routing app from your point of view?
Yes, you can run the GraphHopper server locally. Compared to the online version at Driving Directions - GraphHopper Maps it does not include geocoding (the location search in the text box on the left). You need a separate geocoding service for this. The GraphHopper server only does the routing. You either need to host your own (like Nominatim or Photon) or book a hosted one (like the one from graphhopper.com or others). Also depending on your usage you need setup another map tile server (for the visible map).
For scalable routing you don’t really need anything other than the GraphHopper server. It can serve thousands of requests per second, but you might want to enable Contraction Hierarchies for the best performance.