Abbiamo visto nei numerosi script sull'argomento, come Azure Container App sia in continuo fermento e sviluppo, poiché semplifica enormemente la distribuzione di applicativi basati su container e servizi, senza la necessità di amministrare un cluster Kubernetes, ma beneficiando di esso dietro le quinte. Uno dei vantaggi di questa infrastruttura è il service discovery, cioè la possibilità di creare n app ognuna delle quali raggiungibile tramite l'indirizzo [miaApp].azurecontainerapps.io. In base al numero di istanze e al sistema di tracciamento di salute dei container, quando effettuiamo la chiamata ad un servizio, questa viene automaticamente indirizzata alla specifica istanza, in maniera del tutto trasparente.
Le chiamate HTTP, però, possono fallire per svariati motivi e in molti casi per un problema temporaneo che si risolve nel brevissimo tempo. Può verificarsi per un problema di rete o per un problema applicativo, ma in ogni caso il chiamante si deve preoccupare di implementare le logiche di gestione degli errori e di eventuali nuovi tentativi. Azure Container App ci viene in aiuto anche per risolvere questo problema, permettendoci di impostare delle policy di resiliency automatiche da applicare ad un'app quando essa riceve una chiamata da qualcun altro, poiché è lei che conosce al meglio che tipo di errori si possono verificare e in quali termini implementare nuovi tentativi.
E' sufficiente andare nell'app in questione ed aprire la sezione Resiliency per trovare una serie di spunte che possiamo abilitare, configurando i vari aspetti di ogni policy.
![](https://www.cloudnativeitalia.com/script/images/267.jpg)
Possiamo indicare come gestire gli errori HTTP, il tempo massimo di invocazione, attivare il circuit breaker o indicare quante connessioni HTTP mantenere attive o in coda. Tutto questo viene subito applicato in maniera del tutto trasparente al chiamante che può, a questo punto, evitare di implementare le medesime logiche.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Ottimizzare il mapping di liste di tipi semplici con Entity Framework Core
Utilizzare la session affinity con Azure Container Apps
Gestire la cancellazione di una richiesta in streaming da Blazor
Migliorare la sicurezza dei prompt con Azure AI Studio
Migrare una service connection a workload identity federation in Azure DevOps
Autenticarsi in modo sicuro su Azure tramite GitHub Actions
Reactive form tipizzati con FormBuilder in Angular
Gestire domini wildcard in Azure Container Apps
Potenziare Azure AI Search con la ricerca vettoriale
Sostituire la GitHub Action di login su private registry
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Creare gruppi di client per Event Grid MQTT