Azure / apim-landing-zone-accelerator

The Azure API Management landing zone accelerator provides an architectural approach and reference implementation to prepare landing zone subscriptions for a secure API Management infrastructure.
https://aka.ms/apim-lza
MIT License
148 stars 153 forks source link

Added the new APIM LB policy to replace the custom LB fragments #127

Closed seenu433 closed 2 months ago

seenu433 commented 4 months ago

Added the new APIM LB policy to replace the custom LB fragments

prasann commented 4 months ago

took a quick look, haven't tested this yet.

retry-with-payg should stay. since this is a retry that happens due to 429s. this is a scenario when a customer's PTU is returning 429, and they use PAYG as a backup. I don't think this will be able to replaced by the LB approach.

seenu433 commented 4 months ago

The LB with priority takes care of this scenario where Priority 1 will serve the traffic and when the circuit breaks on the P1 backend, LB routes the traffic to P2 endpoints. Is the retry-with-payg doing something different?

prasann commented 4 months ago

The LB with priority takes care of this scenario where Priority 1 will serve the traffic and when the circuit breaks on the P1 backend, LB routes the traffic to P2 endpoints. Is the retry-with-payg doing something different?

the actual use-case will be, to send all traffic to PTUs, and redirect the 429s alone to PAYG. this way they can maximize PTU utilization with minimal PAYG usage and for the end consumers there won't be any impact.

If i understand this in case of LB. if we have both PTU and PAYG in a pool with varying priority, there are chances that requests gets routed to PAYG without even trying the PTUs, correct? or does it never routes to backend with lower priority?

prasann commented 2 months ago

@seenu433 I have reverted the manage-spikes changes alone from this PR. I'm happy with the LB changes, let me know if something isn't in place.