Tipi di applicazioni Java
In questa unità verrà illustrato come distinguere i diversi tipi di applicazioni Java lato server per poter scegliere la soluzione cloud più adatta.
Applicazioni monolitiche
Un'applicazione monolitica è una soluzione tutto in uno che si adatta comunque a molti progetti. Un'applicazione monolitica è un valido punto di partenza per la creazione di prototipi e le startup. Lo sviluppo, il debug, il test e la distribuzione sono semplici.
Le applicazioni monolitiche vengono tradizionalmente eseguite nei server applicazioni e l'intera applicazione viene dimensionata nel suo complesso.
Microservizi
Oggi si chiede alle aziende non solo di adattarsi e di fallire e rispondere immediatamente agli errori, ma anche di prevedere l'imprevedibile. Per ridurre il time-to-market, vengono assunti nuovi tecnici, Tuttavia, il risultato potrebbe essere l'opposto. Il risultato è un time-to-market più lungo, perché il lavoro richiesto per la comunicazione aumenta quando il numero di tecnici che devono collaborare è maggiore. La soluzione in questo caso consiste nel suddividere le attività.
In un team interfunzionale è possibile riuscire a svolgere i propri compiti nel modo più indipendente possibile. Ogni team deve essere responsabile della propria parte dedicata del software.
Lavori batch
Alcune applicazioni sono progettate per essere eseguite per breve tempo. Eseguono un carico di lavoro specifico e quindi vengono chiuse invece di attendere le richieste o l'input dell'utente. I processi batch sono una soluzione per questo caso d'uso. Anche se alcuni batch possono durare per ore, a volte i processi devono essere eseguiti una sola volta o a intervalli regolari e pianificati.
Architetture serverless
Le funzioni vengono eseguite solo se si verifica un determinato evento. Una funzione viene "attivata" da un tipo specifico di evento. I trigger supportati includono la risposta a modifiche dei dati, la risposta a messaggi, l'esecuzione in base a una pianificazione o la ricezione di una richiesta HTTP.