Storie dalla Sala Macchine |
Home Page | Commenti | Articoli | Faq | Documenti | Ricerca | Archivio | Storie dalla Sala Macchine | Contribuire | Imposta lingua:en it | Login/Register
Ritorniamo a parlare di $allupati, di cui ho gia' detto fin troppo. Ora, dopo le ultime malefatte i signori hanno deciso di "cloudizzarsi" (cosi' ha detto l'ul di turno), il che significa nella sua testa (bacata) di spostare alcune funzioni dell'applicazioni in un qualche servizio web ospitato sa dio dove.
Dopo un paio di test con la versione di test dell'applicazione le cose sembrano andare bene ed il tutto viene riportato in produzione, se non vi ricordate questi sono quelli che avevano cominciato con 6 (sei) application server, poi sono passati ad averne 10 (dieci) ed adesso, dopo qualche 'problemino' di carico sono arrivati ad avere 12 (dodici) server di produzione.
Ok, in effetti sarebbero 14, ma due sono sganciati dal load balancer per una serie di ragioni che adesso non riporto perche' senno' mi viene da bestemmiare solo al pensiero...
Comunque sia, dodici server di produzione.
In ogni caso, i signori fanno qualche test con l'ambiente di test (appunto) e paiono soddisfatti dei risultati, cosi' un bel martedi' mattina facciamo il mega rilascio su tutti i 14 server di produzione e cominciano i guai.
Nel giro di 10 minuti i vari server di produzione cominciano a diventare di un lento da far paura. Tempo addietro avevamo aggiunto una specie di 'watchdog', se la risposta del server diventa troppo lenta il servizio viene riavviato, Questo perche' i vari programmatroti non erano molto capaci di gestire cose come garbage collection. Con il risultato che una applicazione lenta era molto spesso una applicazione sul punto di incartarsi per mancanza di memoria.
Il guaio e' che quella "brillante soluzione" (come l'aveva definita DaBoss, ignorando il mio commento che la soluzione avrebbe brillato di piu' se fosse stata "correggere gli errori nell'applicazione del ca$$o") adesso e' diventata un'arma a doppio taglio, con entrami i lati puntati verso di noi: il sistema e' talmente lento che tutti i server si riavviano uno dopo l'altro e la possibilita' di beccare un errore e' praticamente 1 su 1.
Ovviamente dopo 10 minuti abbiamo $allupati al telefono. Che ovviamente non sono contenti della situazione.
Dopo un po' di tira e molla riesco a convincere l'UL di turno a fare un bel roll-back e ritornare alla versione dell'applicazione precedente. Loh and Behold, tutto funziona in maniera perfetta. Ok, che roba e' cambiato tra la versione vecchia (che funziona) e qualla nuova che si inchioda? A parte un paio di cambiamenti di nessuna importanza, il nuovo web-servizio ovviamente.
Hummm... fatti un girello nei vari log e scopri che quel web-servizio viene chiamato nel 98% delle richieste! Ed eccoti risolto l'arcano: il webservizio del menga e' piu' lento di un bradipo stanco, ergo, tutto il sistema diventa dipendente da l'ennesimo collo di bottlglia/single point of failure. Quando quello diventa troppo lento e cessa di rispondere, l'intero sistema si siede per terra.
DB - Ma cosa possiamo fare?
IO - Noi? Noi non possiamo farci un tubo, se questa gente (mi riferisco a quelli che gestiscono il web-disservizio) non riescono a gestire questo carico di attivita' (che non e' neanche elevato oggi, aspetta la newsletter di domenica e voglio vederti) non e' che ci possiamo fare molto.
DB - Ma se noi per esempio...
IO - Si?
DB - Aggiungessimo un paio di server dalla nostra parte? Non so... un'altra dozzina per esempio...
IO - Quajo! Il problema cosi' lo peggiori e basta. Se si tratta di un eccesso di carico, aggiungere server dalla nostra parte significa aggiungere client alla loro parte, quindi peggiorare il loro carico e non migliorarlo.
DB - Ma noi dobbiamo risolvere il problema!
IO - Lo abbiamo gia' risolto: non usare il web-disservizio, se loro vogliono per forza utilizzarlo dovranno discutere con quelli che lo forniscono di avere una minima capacita' riservata.
DB - Ma se noi aggiungessimo una mezza dozzina di server...
Qualche cosa mi fa pensare che voglia vendergli un'estensione dell'hosting.
Davide
30/01/2012 08:00
I commenti sono aggiunti quando e soprattutto se ho il tempo di guardarli e dopo aver eliminato le cagate, spam, tentativi di phishing et similia. Quindi non trattenete il respiro.
Di Inc0 postato il 30/01/2012 09:19
Sembra una scena presa da "Home Improvement" (in italia noto come "quell'uragano di papà": "cosa ci serve?" "più potenza!" :D
-- KNOWLEDGE IS POWER
Di Guido postato il 30/01/2012 09:20
Lunedì mattina, primo giorno di lavoro come Sviluppatore Java.
Leggo la tua storia e: HUAHUAHUAHUAHUAHUA
grazie Davide!!!
Di Anonymous coward postato il 30/01/2012 09:28
DB - Ma cosa possiamo fare?
DB - Ma se noi per esempio... Aggiungessimo un paio di server dalla nostra parte? Non so... un'altra dozzina per esempio...
DB - Ma noi dobbiamo risolvere il problema!
DB - Ma se noi aggiungessimo una mezza dozzina di server...
lasciami solo con lui. lui io e il mio badile.
-- Anonymous coward
Di Anonymous coward postato il 30/01/2012 11:16
D'altronde, come biasimare il buon vecchio DaBoss... se sono stupidi come sassi, gli intelligenti hanno il diritto e il dovere morale di abusarne, succhiandone tutto il guadagno possibile. Come peraltro hanno già fatto tutti i programmatori che hanno lavorato al progetto.
Quello che manca è solo una scusa plausibile per potergli vendere altri 6 server.
-- Anonymous coward
Di Kurgan postato il 30/01/2012 11:46
Alla fine quanti altri server gli avete venduto? 12? Di piu`? Del resto anche spennarli non e` male come strategia.
Che poi questa cosa dei servizi esterni che non vanno mi ricorda tanto il fatto che oramai qualsiasi sito web "2.0" si appoggia a servizi di nota serieta` professionale, quali per esempio quelli di Facebook. Ne ho visto uno che usava Facebook per hostare delle foto... ma dico, metterle sul disco del tuo server no, eh?
-- Il massimo danno con il minimo sforzo
Di Anonymous coward postato il 30/01/2012 12:39
>Aggiungessimo un paio di server dalla nostra parte?
>Non so... un'altra dozzina per esempio...
quindi per il tiuo capo 2 == 12. Fico. Un'aggirnatina al CV?
-- Anonymous coward
Di Messer Franz postato il 30/01/2012 13:54
OK, queste storie sono in "ritardo" , cioe' tu scrivi (esempio) a giugno noi leggiamo a dicembre.
Quindi cio' che dico potrebbe essersi anche gia' avverato.
Tuttavia....MA QUAND'E' CHE TI CERCHI UN NUOVO LAVORO?????
mi pare che il carico di stress (anche se per cause diverse) si ai livelli di "branco di paguri"....e non mi pare ti paghino abbastanza per sopportarlo senza nessun problema....
-- Messer Franz
@ Messer Franz Di Anonymous coward postato il 31/01/2012 09:32
>mi pare che il carico di stress (anche se per cause diverse) si ai livelli di "branco di paguri"....e >non mi pare ti paghino abbastanza per sopportarlo senza nessun problema....
senza contare che sono passati almeno 10 anni da "branco di paguri" e il nostro comincia ad avere i suoi annetti sul groppone, quindi anche il fisico comicia ad essere meno resistente. Sarebbe ora di cercare un posto in un ISP in un clima piu' temperato...
-- Anonymous coward
@ Anonymous coward Di Davide Bianchi postato il 31/01/2012 12:41
e il nostro comincia ad avere i suoi annetti sul groppone, quindi anche il fisico comicia ad essere meno resistente.
Modo carino e gentile di dire che sto diventando vecchio...
Sarebbe ora di cercare un posto in un ISP in un clima piu' temperato...
Parli di clima meteoreologico o clima tecnologico?
-- Davide Bianchi
@ Davide Bianchi Di Anonymous coward postato il 31/01/2012 22:15
e il nostro comincia ad avere i suoi annetti sul groppone, quindi anche il fisico comicia ad essere meno resistente.
Modo carino e gentile di dire che sto diventando vecchio...
Guaglio', ti seguo fin da quando un certo idiota avvito' il portatile al tavolo, per cui, come invecchi tu, invecchio pure io, eh.
Sarebbe ora di cercare un posto in un ISP in un clima piu' temperato...
Parli di clima meteoreologico o clima tecnologico?
Metereologico. I fessi sono ovunque, tanto vale sopportarli in calzoncini e infradito, al posto di doposcii e giaccone. Minori spese di abbigliamento e niente reumatismi. Mica poco, a pensarci bene.
Comunuque, a giudicare dalle risposte sempre meno diplomatiche e sempre di piu' "quasi-vaffanculo" che dai al tuo capo, il tasso di sopportazione si vede in forte decrescita e considerando il ritardo con cui vengono pubblicate le storie, ho il forte sospetto che ora sei gia' in altro ambito lavorativo. Al massimo, ti do altri 18 mesi, non di piu'.
-- Anonymous coward
Di Alberto postato il 30/01/2012 14:34
E se fossero i web service provider, a buttare più hardware contro il vostro problema?
-- Alberto
Di Zanna postato il 30/01/2012 22:17
No scusa, saranno anche $allupati ma o gestiscono una mega catena di porno shop in quel di Amsterdam oppure sono la NASA perchè 12 server di produzione non sono una cosa propriamente normale per un cliente "medio".
-- Zanna
Di Anonymous coward postato il 31/01/2012 00:20
Giusto giusto in questi giorni un collega ha chiesto che gli venisse messo a disposizione "dell'hardware più potente", magari con Oracle, perché doveva eseguire una query su un database MySQL che si era creato (qualche GB di roba, e poche decine di milioni di righe per la tabella più grande in gioco) e sul suo sistema i tempi erano nell'ordine dei *giorni*.
Dopo avergli fatto notare che non era un problema di hardware (MySQL girava su un Core i7 quad core con 8GB di RAM...) e vari suggerimenti poco presi in considerazione, ho fatto girare il tutto in una VM con suppergiù lo stesso "hardware" dopo aver ottimizzato MySQL, schema e query. Risultato: query eseguita in 27 secondi con il database appena avviato. Con un po' di dati già in cache ci mette 5 secondi...
Certo, ad avere avuto una mezza dozzina di server a disposizione... forse sono fesso io, potevo approfittarne per far compare un nuovo cluster Oracle di sviluppo al prezzo di una query MySQL...
-- Anonymous coward
@ Anonymous coward Di Anonymous coward postato il 01/02/2012 00:27
ho fatto girare il tutto in una VM con suppergiù lo stesso "hardware" dopo aver ottimizzato MySQL, schema e query.
Ahime`, purtroppo non sempre queste cose si possono risolvere ottimizzando la query (e.g. da noi una query generata da un applicativo di nostra produzione su MySQL impiegava un'ora e mezza, su Oracle 5 minuti e no, all'epoca non si poteva mettere mano all'applicativo)
Certo, ad avere avuto una mezza dozzina di server a disposizione... forse sono fesso io, potevo approfittarne per far compare un nuovo cluster Oracle di sviluppo al prezzo di una query MySQL...
Beh, da noi fu la risposta del capo sviluppo ad un problema di carico: per reggere qualcosa come 300 utenti, invece di modificare le query generate dall'applicativo, chiese di dedicare 64Gb di RAM a tomcat (ovviamente la cosa si risolse con meno spargimento di sangue e con una modifica coatta all'applicativo)
Enrico
-- Anonymous coward
Di spacexplorer postato il 31/01/2012 08:09
L'idea di riavviare in automatico è *brillante*, l'incendio di chi la ha
avuta da parte di Simon fa luce eccome, specie se di venerdì sera
Di Anonymous not-so-coward postato il 31/01/2012 10:08
Qualche cosa mi fa pensare che voglia vendergli un'estensione dell'hosting
Qualche cosa mi fa pensare che una delle tue prossime storie riguarderà proprio la messa in servizio di altri 12-14 server, con conseguente verificarsi della tua predizione di peggioramento. Spero almeno che entri in gioco una bella discussione con i programmatroti, così ci facciamo qualche risata con i dialoghi tra te e loro.
-- Anonymous not-so-coward
Di Anonymous quadpumped coward postato il 03/02/2012 14:51
Mi viene in mente un certo J.C. che è appassionato di auto. La cui risposta a tutto è...
"POWEERRR"
N'do 'zzo vai se non sai che fartene della potenza?
A fancubandia?
-- Anonymous quadpumped coward
Il presente sito e' frutto del sudore della mia fronte (e delle mie dita), se siete interessati a ripubblicare uno degli articoli, documenti o qualunque altra cosa presente in questo sito per cortesia datemene comunicazione (o all'autore dell'articolo se non sono io), cosi' il giorno che faccio delle aggiunte potro' avvisarvi e magari mandarvi il testo aggiornato.
Questo sito era composto con VIM, ora e' composto con VIM ed il famosissimo CMS FdT.
Questo sito non e' ottimizzato per la visione con nessun browser particolare, ne' richiede l'uso di font particolari o risoluzioni speciali. Siete liberi di vederlo come vi pare e piace, o come disse qualcuno: "Finalmente uno dei POCHI siti che ancora funzionano con IE5 dentro Windows 3.1".