Nozioni fondamentali sull'architettura delle applicazioni in Azure

Questa raccolta di contenuti illustra un approccio strutturato alla progettazione di applicazioni in Azure che offrano scalabilità, sicurezza, resilienza e disponibilità elevata. Il materiale sussidiario è basato su procedure comprovate apprese nel corso delle interazioni con i clienti.

Introduzione

Il cloud sta cambiando il modo in cui le applicazioni vengono progettate e protette. Anziché essere concepite come monoliti, le applicazioni vengono scomposte in servizi decentralizzati e di dimensioni inferiori. Questi servizi comunicano tramite API o usando la gestione eventi o la messaggistica asincrona. Le applicazioni scalano orizzontalmente aggiungendo nuove istanza in base alle esigenze.

Queste tendenze pongono nuove sfide. Gli stati dell'applicazione vengono distribuiti. Le operazioni vengono eseguite in parallelo e in modo asincrono. In caso di errori le applicazioni devono essere resilienti. Gli utenti malintenzionati continuano ad attaccare le applicazioni. Le distribuzioni devono essere automatizzate e prevedibili. Il monitoraggio e la telemetria sono fondamentali per ottenere informazioni dettagliate sul sistema. Questa guida è stata progettata per consentire di individuare queste modifiche con facilità.

Locale tradizionaleCloud moderno
Monolitico
Progettato per una scalabilità prevedibile
Database relazionale
Elaborazione sincronizzata
Progettazione per evitare errori (MTBF)
Aggiornamenti occasionali di grandi dimensioni
Gestione manuale
Server con schema snowflake
Scomposto
Progettato per la scalabilità elastica
Persistenza Polyglot (combinazione di tecnologie di archiviazione)
Elaborazione asincrona
Progettazione in funzione del rischio di errori (MTTR)
Aggiornamenti frequenti di piccole dimensioni
Autogestione automatizzata
Infrastruttura non modificabile

Struttura del materiale sussidiario

Il materiale sussidiario dedicato alle nozioni fondamentali all'architettura delle applicazione in Azure è concepito come una serie di passaggi, dall'architettura e la progettazione fino all'implementazione. Per ogni passaggio, sono disponibili indicazioni di supporto che consentono di progettare l'architettura dell'applicazione.

Diagramma che illustra la struttura della guida, con sezioni dell'articolo rappresentate in un diagramma di flusso.

Stili di architettura

Il primo punto di decisione è il più importante. Che stile di architettura si intende costruire? Sarà un'architettura di microservizi, un'applicazione a più livelli maggiormente tradizionale o una soluzione per Big Data? Sono stati identificati diversi stili di architettura distinti. Ogni stile offre vantaggi e pone sfide.

Altre informazioni: Stili di architettura

Scelte di tecnologia

Una volta noto il tipo di architettura da creare, è ora possibile iniziare a scegliere i componenti principali della tecnologia per l'architettura. I componenti essenziali sono i seguenti:

  • Calcolo fa riferimento al modello di hosting per le risorse di calcolo in cui vengono eseguite le applicazioni. Per altre informazioni, vedere Scegliere un servizio di calcolo.

  • Gli archivi dati includono i database ma anche lo spazio di archiviazione per le code di messaggi, le cache, i log e qualsiasi altro elemento in cui è possibile salvare in modo permanente un'applicazione. Per altre informazioni, vedere Scegliere un archivio dati.

  • Le tecnologie di messaggistica consentono lo scambio di messaggi asincroni tra i componenti del sistema. Per altre informazioni, vedere Scegliere un servizio di messaggistica.

È probabile le scelte da effettuare non siano limitate a questi tre elementi (calcolo, dati e messaggistica), che tuttavia rivestono un ruolo centrale per la maggior parte delle applicazioni cloud e determinano molti aspetti della progettazione.

Progettare l'architettura

Dopo aver scelto lo stile di architettura e i componenti principali della tecnologia, è possibile passare alla progettazione specifica dell'applicazione. Ogni applicazione è diversa, ma le risorse seguenti possono essere utili durante il processo:

Architetture di riferimento

A seconda dello scenario, una delle architetture di riferimento può costituire un valido punto di partenza. Ogni architettura di riferimento include le procedure consigliate, oltre a considerazioni per la scalabilità, la disponibilità, la sicurezza, la resilienza e altri aspetti della progettazione. La maggior parte include anche una soluzione distribuibile o un'implementazione di riferimento.

Principi di progettazione

Sono stati identificati 10 principi di progettazione generali che consentiranno di rendere l'applicazione più scalabile, resiliente e gestibile. Questi principi di progettazione si applicano a qualsiasi stile architettonico. Durante il processo di progettazione tenere presente questi 10 principi generali. Per altre informazioni, vedere Principi di progettazione.

Modelli di progettazione

I modelli di progettazione software sono schemi ripetibili che hanno dimostrato di soddisfare problemi specifici. Il catalogo dei modelli di progettazione cloud include modelli in grado di gestire aspetti specifici dei sistemi distribuiti, Vengono affrontati aspetti quali disponibilità, disponibilità elevata, eccellenza operativa, resilienza, prestazioni e sicurezza. È possibile trovare il catalogo degli schemi progettuali qui.

Procedure consigliate

Gli articoli relativi alle procedure consigliate trattano diversi aspetti della progettazione, tra cui progettazione dell'API, scalabilità automatica, partizionamento dei dati, memorizzazione nella cache e così via. Leggere tali articoli e applicare le procedure consigliate appropriate per la propria applicazione.

Procedure consigliate per la sicurezza

Le procedure consigliate sulla sicurezza illustrano come assicurarsi che la riservatezza, l'integrità e la disponibilità delle applicazioni non vengano compromesse da utenti malintenzionati.

Concetti fondamentali per la qualità

Un'applicazione cloud riuscita si concentra su cinque pilastri della qualità del software: affidabilità, sicurezza, ottimizzazione dei costi, eccellenza operativa e efficienza delle prestazioni.

Sfruttare Microsoft Azure Well-Architected Framework per valutare l'architettura tenendo presenti questi cinque pilastri.

Passaggi successivi