Programmazione.it v6.4
Ciao, per farti riconoscere devi fare il login. Non ti sei ancora iscritto? Che aspetti, registrati adesso!
Info Pubblicità Collabora Autori Sottoscrizioni Preferiti Bozze Scheda personale Privacy Archivio Libri Corsi per principianti Forum
La scimmia del caos, causare guasti intenzionali per testare le architetture
Scritto da Luca Domenichini il 29-04-2011 ore 08:38
Intel Parallel Studio XE 2015
Il cloud computing, si sa, offre enormi vantaggi allo sviluppo delle applicazioni: dal punto di vista computazionale si hanno a disposizione risorse pressoché illimitate; per ciò che concerne la scalabilità queste risorse possono essere usate in modo incrementale in base alle proprie necessità; dal punto di vista dell'integrazione, l'ecosistema del cloud può essere utilizzato per standardizzare e facilitare l'interazione fra servizi web e applicazioni differenti; infine, relativamente al costo, di norma si paga solo quello che si utilizza effettivamente.

Ma cloud computing significa anche riporre grande fiducia nelle capacità e nella professionalità di terze parti, che se non lavorano bene possono compromettere in un sol colpo il nostro lavoro. Tanto per fare un esempio, è possibile citare la grave situazione venutasi a creare la scorsa settimana nella regione Virginia degli Amazon Web Services (AWS). Cosa fare? Come difendersi da una minaccia del genere?

Una soluzione l'hanno trovata gli ingegneri di Netflix, la società americana nata nel 1997, che utilizza massicciamente AWS per offrire ai suoi 23 milioni di clienti un servizio di noleggio DVD e videogame. Tra i loro amministratori di sistema e sviluppatori, è stata infatti recentemente introdotta una nuova figura professionale, chiamata simpaticamente "The Chaos Monkey" (letteralmente, la scimmia del caos). Il compito fondamentale di questa scimmia è quello di interrompere/spegnere/far saltare in modo del tutto casuale istanze e servizi in funzione sui server Netflix, creando volutamente guai ai tecnici addetti alla manutenzione.

Con una forma di training molto invasiva e piuttosto stressante, la direzione di Netflix costringe così i propri sviluppatori a concentrare sempre di più l'attenzione sull'indipendenza dei sistemi: ogni sezione deve continuare a funzionare, non importa cosa accade, non importa quante unità intorno a essa cessino di funzionare; deve insomma diventare quella che hanno cominciato a chiamare una Rambo Architecture.

Ottenere un obiettivo del genere è utile in fin dei conti, anche per chi non ha deciso di assumere una propria scimmia, anche perché il caos può sempre colpirci, quando meno ce lo aspettiamo.

Jeff Atwood, forte della sua esperienza (negativa) con l'Oregon Web Farm, consiglia quindi di: moltiplicare i server con funzioni essenziali (ridondanza); creare sistemi di fallback dove non erano previsti; rimuovere delle dipendenze, fino al minimo essenziale per consentire il funzionamento; studiare trucchi e strategie per rimanere online fino all'ultimo server.
Precedente: Scripting Intelligence: Web 3.0 Information Gathering and Processing
Successiva: Responsive-Images, solo risorse adatte al dispositivo
Intervento di Emanuele Gianturco a.k.a. kafka del 02-05-2011 ore 18:10, Roma (RM)
Barone
Barone

(234 interventi)
Iscritto il 10-04-2001
Infatti la Netflix, come molti altri clienti AWS non hanno avuto ripercussioni dalle problematiche di Amazon.
Copyright Programmazione.it™ 1999-2014. Alcuni diritti riservati. Testata giornalistica iscritta col n. 569 presso il Tribunale di Milano in data 14/10/2002. Pagina generata in 0.197 secondi.