Context
Map services are autocomplete, geocode, direction services, are hosted via fragmented places on DO, VCCloud, Aws and GCP. Hence it is hard to control and debug/troubleshoot issue on any service.
Various clients are using map services: platform (apis), mobile (android/ios), web (ahamove, onwheel) to various endpoints. Hence it is hard to track performance and usage per client and control their traffic.
So, we need to restructure our map services to a single url but different path for different client, and have a fallback mechanism.
Solution
General solution is to unify all endpoint of map services to a single kong gateway base url, define different path per client, setup proper monitoring for both staging and production.
Autocomplete
Geocode
Direction (OSRM)