0.33 change: throttling limiet
Context
We voorzien throttling op twee niveaus, namelijk NGINX (webserver) en BFF (Java applicatie).
Wanneer requests geweigerd worden door throttling wordt HTTP errorcode 429 ("Too Many Requests") teruggestuurd naar de API client. De client kan dan later opnieuw proberen de request te versturen.
Beschrijving throttling in NGINX
Op NGINX niveau kennen we de API client niet, hier kunnen we dus enkel throttling per API endpoint configureren. We stellen een limiet in per rol (zie tabel hieronder).
Bijvoorbeeld: max ### gelijktijdige requests toegelaten voor
/uitvaart/per NGINX node.HTTP errorcode 429
Finer-grained throttling in de applicatielaag
In de applicatielaag kennen we de ingelogde gebruiker, en kunnen we dus limieten instellen per gebruiker of API client (zie tabel hieronder)
Bijvoorbeeld: max ### gelijktijdige requests toegelaten per individuele uitvaartonderneming
HTTP errorcode 429
Limieten
Service afspraken | Throttling instellingen | ||||
Rol | Dagelijks maximaal geschat aantal gebruikers | Gelijktijdig ingelogde gebruikers | Gelijktijdige transacties | Limiet gelijktijdige txs per rol | Limiet gelijktijdige txs per API client (gebruiker) |
Arts (+ beëdigd arts) | 800 (400+400) | 300 (200+100) | 15 (10+5) | 75 | 7 |
Uitvaartondernemer | 3000 | 500 | 10 | 100 | 5 |
Ambtenaar burgerlijke stand | 285 | 285 | 10 | 300 | 10 |
Medewerker begraafplaats | 285 | 285 | 5 | 10 | 2 |
Medewerker crematorium | 15 | 15 | 3 | 10 | 2 |
Zorg Dataplatform | 1 | 1 | 1 | 2 | 2 |
Support medewerker Athumi | 3 | 1 | 1 | 2 | 2 |
Opmerking: We evalueren de cijfers nog met het huidige productiegebruik tijdens pilootfase