none of this has anything to do with the server. these are all backend matters. routing, geocoding, poi's are all handled by db servers. when you request tiles from, eg, google, that is 1 server (actually, more than 1). when you request a poi from google, that is a different server. they are all part of google.com, but they are all different hosts (servers) in that domain. you don't ask google's tile servers for geocoding data. they just serve tiles. you don't ask google's geocoding server for tiles. it just resolves geocoding requests. your browser uses a mapping api to make these diverse requests to the appropriate server and to put the results together to display a map with, eg, markers.