
Rubber Ducking
La Rubber ducking è una pratica dell’ingegneria del software che consiste nello spiegare ad un oggetto inanimato, come una papera oppure un’oca, il funzionamento di
Con la corsa alla digitalizzazione si è diffusa molto rapidamente la filosofia DevOps che, mettendo in sinergia sviluppatori, project manager e addetti alle infrastrutture, consente di rilasciare continuamente aggiornamenti e prodotti software senza sacrificare la qualità e l’utilizzo delle nuove tecnologie. Questo sta portando verso una graduale migrazione dallo sviluppo di software monolitico allo sviluppo di software a micro servizi.
Le applicazioni sviluppate con l’architettura monolitica contengono in un unico posto tutte le componenti come l’interfaccia utente, il sistema di autenticazione, la logica di business e le iterazioni con il database. Ad esempio, le vecchie applicazioni in PHP e ASP sono quasi tutte realizzate con questa architettura.
I monoliti sono difficili da gestire. La manutenzione è spesso un grande problema: correggere o aggiungere nuove funzionalità, specialmente su software di grandi dimensioni, risulta molto difficile perché si rischia di andare a modificare altre parti di codice che vengono richiamate da altre funzionalità. Inoltre è necessario comprendere nella totalità del codice quali righe andare a modificare, questo comporta dei monopoli da parte degli sviluppatori e la non condivisione della conoscenza. Oltre ai tempi tecnici notevolmente allungati, la messa in linea delle modifiche richiede ogni volta il completo deploy di tutta l’applicazione con i conseguenti disservizi generati agli utenti. La scalabilità, se non orizzontale, è praticamente nulla e l’affidabilità bassa poiché è molto facile che un problema all’interno di un modulo possa bloccare l’intero applicativo.
Un’alternativa ai monoliti è l’innovativa architettura a microservizi che, mediante la realizzazione di moduli che comunicano tra loro attraverso API, consente di realizzare componenti indipendenti e in caso di un eventuale malfunzionamento su uno di questi servizi, gli altri continueranno comunque a funzionare.
Grazie alle più moderne tecnologie come Kubernetes e Docker ciascun modulo può essere scalato in maniera indipendente e duplicato su più server. Diversi sviluppatori possono lavorare contemporaneamente su diversi servizi andando a velocizzare il ciclo di sviluppo. Per natura i microservizi sono amici del modello DevOps e della metodologia CI/CD (Continuous Integration/Continuous Deployment). Al contrario dei monoliti, un aggiornamento non creerà un disservizio diffuso su tutta l’applicazione, ma solamente sul determinato modulo. Lo stesso ragionamento vale per eventuali malfunzionamenti: si blocca un servizio, ma gli altri continuano a funzionare e l’applicazione a microservizi non crolla.
La Rubber ducking è una pratica dell’ingegneria del software che consiste nello spiegare ad un oggetto inanimato, come una papera oppure un’oca, il funzionamento di
Il project management ci aiuta a gestire in modo strutturato ed organizzato tutte le attività che riguardano la realizzazione di un progetto. Un progetto è
Computer Science è un repository GitHub della Open Source Society University che ha l’obiettivo di raccoglie materiale informatico per dare la possibilità a chiunque di
Questo sito utilizza cookie e tecnologie simili per garantire il corretto funzionamento delle procedure e migliorare l’esperienza di uso delle applicazioni online. L'utente è invitato a leggere le relative pagine di documentazione elencate di seguito:
Titolare del trattamento
Riccardo Riggi – Via Campomorone, 40/16 16164 Genova (Italia)
Indirizzo email: info@riccardoriggi.it
Hosting provider
Aruba S.p.A. - Via San Clemente n.53 Ponte San Pietro 24036 BG
Indirizzo email: dpo@staff.aruba.it
Gli Utenti che dovessero avere domande sono incoraggiati a contattare il Titolare
I cookie tecnici sono necessari per consentire la navigazione del sito e l’utilizzo di alcuni prodotti e servizi. Vengono utilizzati, ad esempio, per riconoscere l’utente che si è autenticato alla propria casella di posta elettronica e mantenere aperta la sessione anche quando visita altre pagine del sito, oppure per garantire alcune misure di sicurezza del sito e monitorarne il corretto funzionamento. Fra i cookie utilizzati troviamo:
L'utente è invitato a leggere l'intera Cookie Policy
Se disabiliti questo cookie, non saremo in grado di salvare le tue preferenze. Ciò significa che ogni volta che visiti questo sito web dovrai abilitare o disabilitare nuovamente i cookie.