none
API Management route API calls to regional backend services and Health Monitoring RRS feed

  • Question

  • Hi we are considering using APIM policies to route API calls to regional backend services as part of a high-availability design. 

    This is described on docs at Route API calls to regional backend services.

    Docs notes that traffic is routed to backend services using lowest latency and reference Traffic Manager Performance Routing.

    Question is, what is the behaviour of APIM if one of the endpoints on the backend becomes unhealthy, maybe is unavailable or long response times. Does APIM route traffic to different endpoints? 

    In the Traffic Manager Performance Routing docs it says "Performance traffic-routing does not monitor load on a given service endpoint. However, if an endpoint becomes unavailable, Traffic Manager does not include it in DNS query responses". Using Traffic Manager directly allows us to configure health monitoring so i can understand how it works for Traffic Manager. Does APIM do that for us under-the-hood and take the backend endpoint out of the pool if its unhealthy?

    Thursday, November 28, 2019 1:22 PM

All replies

  • Let's say you have two API's in two regions.

    1) http://xxxxx.azure-api.net/application1/service

    2) http://xxxxx.azure-api.net/application2/service

    You can Setup TM too forward calls to XXX.azure-api.net and YYY.azure-api.net. Optionally setup health probes for /status to monitor APIM status and take it out of rotation if service is down for some reason.

    Or scale up to Premium tier and use multi-geo feature to add second region to single APIM service. Then all you need to do is setup custom hostname, TM will be created internally with performance profile. Although that is more expensive than having two basic/standard services with custom TM infront.

    Friday, November 29, 2019 9:24 AM
    Moderator
  • Hi DixitArora-MSFT, thanks for the response.

    We are considering the APIM Premium tier and multi-geo feature.

    Still unsure of the behaviour though, does APIM remove a backend service from rotation if it becomes unavailable? Sounds from the docs that it does...

    "Performance traffic-routing does not monitor load on a given service endpoint. However, if an endpoint becomes unavailable, Traffic Manager does not include it in DNS query responses."

    Wasn't sure if health monitoring is needed for that and how APIM does the health monitoring.

    thanks


    Friday, November 29, 2019 12:11 PM