1 00:00:00,000 --> 00:00:00,629 2 00:00:00,629 --> 00:00:02,170 DAVID MALAN: Va bene, bentornato. 3 00:00:02,170 --> 00:00:06,520 Prima di tuffarci in cloud computing, Ho pensato di fermarmi un attimo 4 00:00:06,520 --> 00:00:11,740 se ci sono questioni in sospeso o argomenti che si avvicinò durante il pranzo 5 00:00:11,740 --> 00:00:13,834 che potrebbe ora essere di interesse. 6 00:00:13,834 --> 00:00:18,470 7 00:00:18,470 --> 00:00:21,410 >> PUBBLICO: [INAUDIBLE] 8 00:00:21,410 --> 00:00:22,090 >> DAVID MALAN: OK. 9 00:00:22,090 --> 00:00:23,555 Oh va bene. 10 00:00:23,555 --> 00:00:24,430 PUBBLICO: [INAUDIBLE] 11 00:00:24,430 --> 00:00:29,880 12 00:00:29,880 --> 00:00:31,420 >> DAVID MALAN: No, naturalmente. 13 00:00:31,420 --> 00:00:35,180 OK, così si spera tutto il vostro problemi sorgono nelle prossime ore 14 00:00:35,180 --> 00:00:36,410 e domani in particolare. 15 00:00:36,410 --> 00:00:42,700 Ma diamo uno sguardo, poi, dove l'ultima discussione sulla configurazione 16 00:00:42,700 --> 00:00:45,730 un sito web porta, più in generale quando si tratta di cloud computing, 17 00:00:45,730 --> 00:00:48,210 la creazione di un architettura server, il tipo di decisioni 18 00:00:48,210 --> 00:00:50,800 che gli ingegneri e sviluppatori e manager 19 00:00:50,800 --> 00:00:53,210 bisogno di fare quando si tratta a fare più di un semplice 20 00:00:53,210 --> 00:00:56,550 la firma per un $ 10 al mese host web quando si vuole realmente costruire fuori 21 00:00:56,550 --> 00:00:57,550 la propria infrastruttura. 22 00:00:57,550 --> 00:01:00,400 E cercheremo di legare questo ritorno, per esempio, a Dropbox e altri 23 00:01:00,400 --> 00:01:01,350 come loro. 24 00:01:01,350 --> 00:01:06,250 >> Quindi partiamo da considerare Quali sono i problemi sorgono come di business 25 00:01:06,250 --> 00:01:09,390 ottiene il bene e sorgono problemi buone. 26 00:01:09,390 --> 00:01:14,720 Quindi nel caso molto semplice di avere alcune società che ha un web server, 27 00:01:14,720 --> 00:01:21,470 si potrebbe avere, diciamo, un server che ci limiteremo a pareggio che assomiglia a questo. 28 00:01:21,470 --> 00:01:25,620 E in questi giorni, la maggior parte servers-- e andiamo in realtà mettere una foto di questo solo così 29 00:01:25,620 --> 00:01:27,680 che è un po 'meno nebulosa. 30 00:01:27,680 --> 00:01:31,510 >> Così Dell cremagliera server-- back in the day, ci 31 00:01:31,510 --> 00:01:33,730 erano mainframe che occupava intere stanze. 32 00:01:33,730 --> 00:01:35,710 In questi giorni, se si dovesse per ottenere un server, 33 00:01:35,710 --> 00:01:38,520 potrebbe apparire un po 'qualcosa di simile. 34 00:01:38,520 --> 00:01:41,760 I server sono misurate in quanto sono chiamati unità rack o IF. 35 00:01:41,760 --> 00:01:45,280 E uno RU è di 1,5 pollici, che è uno standard industriale. 36 00:01:45,280 --> 00:01:49,300 Quindi, questo sembra un server a due RU. 37 00:01:49,300 --> 00:01:51,240 Quindi è alto 3 pollici. 38 00:01:51,240 --> 00:01:54,430 E sono generalmente ampio 19 pollici, che significa tutto questo genere di cose 39 00:01:54,430 --> 00:01:55,160 è standardizzato. 40 00:01:55,160 --> 00:01:59,420 >> Quindi, se si guarda in un center-- dati non solo a un server, ma cerchiamo di 41 00:01:59,420 --> 00:02:02,110 dare un'occhiata a Google data center e vedere se siamo 42 00:02:02,110 --> 00:02:04,280 vedere una bella foto in Google Immagini. 43 00:02:04,280 --> 00:02:09,090 Questo è molto meglio di quanto si accende sarebbe tipicamente trovare, e molto 44 00:02:09,090 --> 00:02:14,900 più sexy cercando di conseguenza. Ma questo è quello che sembra un paio 45 00:02:14,900 --> 00:02:17,380 centinaia di tutti i server circa la stessa dimensione, 46 00:02:17,380 --> 00:02:21,450 in realtà, a cremagliera dopo cremagliera dopo cremagliera dopo rack in un centro dati. 47 00:02:21,450 --> 00:02:26,150 >> Qualcosa di simile questo-- questo bene può essere Google, dal momento che su Google Google. 48 00:02:26,150 --> 00:02:28,330 Ma potrebbe essere rappresentativo più in generale 49 00:02:28,330 --> 00:02:31,480 un centro dati in cui molti le aziende sono in genere la stessa ubicazione. 50 00:02:31,480 --> 00:02:34,940 E co-locato in genere significa che si va in un posto come Equinix 51 00:02:34,940 --> 00:02:40,280 o altri fornitori che hanno grandi magazzini che hanno un sacco di potenza, 52 00:02:40,280 --> 00:02:42,950 un sacco di raffreddamento, si spera un sacco di sicurezza, 53 00:02:42,950 --> 00:02:47,910 e gabbie individuali racchiude rack di server, e si sia affittare i rack 54 00:02:47,910 --> 00:02:49,150 o si mettono i rack a. 55 00:02:49,150 --> 00:02:51,420 >> E le singole aziende, start-up in particolare, 56 00:02:51,420 --> 00:02:54,820 avrà un qualche tipo di dati biometrici entrare nella loro gabbia, o di una chiave, 57 00:02:54,820 --> 00:02:55,640 o una scheda magnetica. 58 00:02:55,640 --> 00:02:56,990 Si apre la porta. 59 00:02:56,990 --> 00:03:00,354 E dentro di c'è solo un metraggio impronta quadrata 60 00:03:00,354 --> 00:03:03,270 che si sta pagando per, all'interno di che si può mettere tutto quello che vuoi. 61 00:03:03,270 --> 00:03:04,770 >> E in genere si paga per il potere. 62 00:03:04,770 --> 00:03:06,920 E si paga per le impronte. 63 00:03:06,920 --> 00:03:08,770 E poi si paga te stesso per i server 64 00:03:08,770 --> 00:03:10,560 che si sta portando in quello spazio. 65 00:03:10,560 --> 00:03:12,850 E quello che poi ha la possibilità di fare è pagare qualcuno 66 00:03:12,850 --> 00:03:15,120 per la connettività servizio internet. 67 00:03:15,120 --> 00:03:17,240 Si può pagare un qualsiasi numero di fornitori, i quali 68 00:03:17,240 --> 00:03:19,210 di solito entrare in quella data center. 69 00:03:19,210 --> 00:03:22,740 >> Ma la vera domanda è interessante, ciò che accade realmente in quei scaffali? 70 00:03:22,740 --> 00:03:25,020 Potrebbero tutti molto bene assomigliare a quello che abbiamo appena visto. 71 00:03:25,020 --> 00:03:27,870 Ma essi svolgono funzioni diverse e potrebbe aver bisogno di fare cose diverse. 72 00:03:27,870 --> 00:03:29,661 E che in realtà motivare questa discussione 73 00:03:29,661 --> 00:03:35,370 con la domanda di, quale problema comincia a sorgere, se sei riuscito? 74 00:03:35,370 --> 00:03:37,900 >> Quindi hai un sito web che hai costruito. 75 00:03:37,900 --> 00:03:40,450 E forse si vende widget o qualcosa di simile. 76 00:03:40,450 --> 00:03:43,620 E che hai fatto molto bene con un fatturato di widget on-line. 77 00:03:43,620 --> 00:03:48,490 E si inizia a sperimentare alcuni sintomi, il vostro sito web. 78 00:03:48,490 --> 00:03:51,070 Quale potrebbe essere un po 'di i sintomi tecnici 79 00:03:51,070 --> 00:03:54,040 che gli utenti segnalano come di business è in crescita e in forte espansione 80 00:03:54,040 --> 00:03:59,482 e il vostro sito è beneficiando di questo? 81 00:03:59,482 --> 00:04:02,690 >> PUBBLICO: [INAUDIBLE] 82 00:04:02,690 --> 00:04:05,910 83 00:04:05,910 --> 00:04:07,050 >> DAVID MALAN: Sì, esattamente. 84 00:04:07,050 --> 00:04:10,040 Quindi, si potrebbe avere un rallentamento del tuo sito web. 85 00:04:10,040 --> 00:04:11,240 E perché potrebbe succedere? 86 00:04:11,240 --> 00:04:12,660 Beh, se assumiamo, per il bene della discussione 87 00:04:12,660 --> 00:04:15,160 in questo momento, che sei in un di questi host web commerciali 88 00:04:15,160 --> 00:04:17,860 di cui abbiamo parlato prima di pranzo, che si paga un determinato numero di dollari 89 00:04:17,860 --> 00:04:20,859 a al mese, e hai già pagato per il costo annuo del proprio dominio 90 00:04:20,859 --> 00:04:25,300 nome, quello host web è probabilmente overselling loro risorse 91 00:04:25,300 --> 00:04:26,050 in una certa misura. 92 00:04:26,050 --> 00:04:29,000 Così si potrebbe avere un nome utente e la password sul loro server. 93 00:04:29,000 --> 00:04:32,410 Ma così potrebbe diversi altri, o più dozzina di altri, o forse anche più 94 00:04:32,410 --> 00:04:33,980 centinaia di altri, utenti. 95 00:04:33,980 --> 00:04:37,190 >> E siti web vivono fisicamente sullo stesso server. 96 00:04:37,190 --> 00:04:38,340 Perché questo è possibile? 97 00:04:38,340 --> 00:04:40,680 Bene in questi giorni, i server come questo genere 98 00:04:40,680 --> 00:04:44,610 avere più dischi rigidi, forse fino a sei o più dischi rigidi, 99 00:04:44,610 --> 00:04:47,665 ciascuno dei quali può essere tanto come 4 terabyte in questi giorni. 100 00:04:47,665 --> 00:04:52,140 Così si potrebbe avere 24 terabyte di spazio in solo un piccolo server, come questo. 101 00:04:52,140 --> 00:04:55,710 >> E anche se rubi un po 'di quello spazio per la ridondanza, per scopi di backup, 102 00:04:55,710 --> 00:04:57,110 è ancora un bel po 'di spazio. 103 00:04:57,110 --> 00:05:00,070 E certamente, un tipico sito web non ha bisogno di molto spazio. 104 00:05:00,070 --> 00:05:03,100 Proprio registrazione degli utenti e l'archiviazione dei log di ordini 105 00:05:03,100 --> 00:05:04,640 non prende più di tanto spazio. 106 00:05:04,640 --> 00:05:07,550 Così è possibile partizionare abbastanza un po 'e dare ad ogni utente 107 00:05:07,550 --> 00:05:08,980 solo una piccola fetta di questo. 108 00:05:08,980 --> 00:05:11,310 >> Nel frattempo, un computer in questo modo in questi giorni 109 00:05:11,310 --> 00:05:16,370 di solito ha più CPUs-- non solo uno, forse due, forse quattro, forse 16, 110 00:05:16,370 --> 00:05:17,149 o anche di più. 111 00:05:17,149 --> 00:05:18,940 E ciascuna di queste CPU ha qualcosa chiamato 112 00:05:18,940 --> 00:05:22,230 un nucleo, che è un po 'come un cervello all'interno di un cervello. 113 00:05:22,230 --> 00:05:26,800 Quindi, in realtà la maggior parte tutti i presenti con portatili moderni ha probabilmente un dual core 114 00:05:26,800 --> 00:05:32,030 o CPU-- quad core e probabilmente solo una CPU all'interno di un computer portatile questi giorni. 115 00:05:32,030 --> 00:05:35,030 Ma i computer desktop e computer cremagliera come 116 00:05:35,030 --> 00:05:39,000 questo potrebbe avere un bel po ' più CPU, e in nuclei sua volta. 117 00:05:39,000 --> 00:05:44,180 >> E, francamente, anche nei nostri Mac e PC di oggi, non si ha realmente bisogno di dual core 118 00:05:44,180 --> 00:05:46,550 o quad core per controllare la posta elettronica. 119 00:05:46,550 --> 00:05:49,090 Se c'è un collo di bottiglia quando si tratta di utilizzare un computer, 120 00:05:49,090 --> 00:05:51,925 la umani sono probabilmente la cosa più lento su quel computer. 121 00:05:51,925 --> 00:05:54,800 E non sta andando ad essere in grado di controllare la posta elettronica più velocemente se si 122 00:05:54,800 --> 00:05:57,170 hanno quattro volte il numero di CPU o core. 123 00:05:57,170 --> 00:05:59,700 >> Ma lo stesso tipo della vera di un server. 124 00:05:59,700 --> 00:06:02,970 Un sito web unico non potrebbe necessariamente bisogno di più di una 125 00:06:02,970 --> 00:06:05,756 CPU o un core, uno cervello piccolo all'interno facendo 126 00:06:05,756 --> 00:06:07,380 tutto il pensiero e l'elaborazione. 127 00:06:07,380 --> 00:06:10,561 Così i produttori hanno simile ha iniziato a tagliare tali risorse 128 00:06:10,561 --> 00:06:13,435 in modo che forse il vostro sito riceve un nucleo, il vostro sito riceve un core, 129 00:06:13,435 --> 00:06:15,290 o forse stiamo condividendo un tale nucleo. 130 00:06:15,290 --> 00:06:16,820 Stiamo anche la condivisione di spazio su disco. 131 00:06:16,820 --> 00:06:20,000 E stiamo anche la condivisione di RAM, o Random Access Memory 132 00:06:20,000 --> 00:06:22,520 da prima, di cui c'è anche una quantità limitata. 133 00:06:22,520 --> 00:06:23,420 >> E questa è la chiave. 134 00:06:23,420 --> 00:06:25,960 Non importa quanto costoso il computer era, 135 00:06:25,960 --> 00:06:28,440 c'è ancora un finita quantità di risorse in esso. 136 00:06:28,440 --> 00:06:31,360 E così la sempre più si cercare di consumare tali risorse, 137 00:06:31,360 --> 00:06:32,850 le cose potrebbero diventare più lenti. 138 00:06:32,850 --> 00:06:34,646 Ma perché? 139 00:06:34,646 --> 00:06:39,352 Perché le cose sarebbero rallentare come sintomo di un server che viene sovraccaricato? 140 00:06:39,352 --> 00:06:40,060 Cosa sta succedendo? 141 00:06:40,060 --> 00:06:42,895 142 00:06:42,895 --> 00:06:46,388 >> PUBBLICO: [INAUDIBLE] 143 00:06:46,388 --> 00:06:54,036 144 00:06:54,036 --> 00:06:55,160 DAVID MALAN: Sì, esattamente. 145 00:06:55,160 --> 00:06:57,730 Ho proposto in precedenza che RAM è un tipo di memoria. 146 00:06:57,730 --> 00:07:00,290 E 'volatile, per cui questo è dove le applicazioni ei dati sono 147 00:07:00,290 --> 00:07:01,890 memorizzato quando sono in uso. 148 00:07:01,890 --> 00:07:03,990 E così dunque non c'è solo un numero finito 149 00:07:03,990 --> 00:07:05,790 di cose che si possono fare a quanto pare in una sola volta. 150 00:07:05,790 --> 00:07:07,740 Ed è anche più veloce, che è una buona cosa. 151 00:07:07,740 --> 00:07:09,990 Ma è anche più costoso, che è una brutta cosa. 152 00:07:09,990 --> 00:07:15,376 Ed è anche quindi presente in basso quantità di spazio su disco, disco rigido 153 00:07:15,376 --> 00:07:16,750 spazio, che tende ad essere più conveniente. 154 00:07:16,750 --> 00:07:18,830 >> In altre parole, potrebbe avere 4 terabyte 155 00:07:18,830 --> 00:07:20,440 di spazio su disco nel computer. 156 00:07:20,440 --> 00:07:24,300 Ma si potrebbe avere 4 gigabyte o 64 gigabyte, 157 00:07:24,300 --> 00:07:29,180 in ordine di grandezza, un fattore di 1.000 meno, di RAM presente nel computer. 158 00:07:29,180 --> 00:07:30,320 Che cosa fa un computer a fare? 159 00:07:30,320 --> 00:07:32,236 Bene, supponiamo che si non avere 64 gigabyte 160 00:07:32,236 --> 00:07:35,110 di RAM in un server come questo, che sarebbe abbastanza comune, se non basso 161 00:07:35,110 --> 00:07:36,140 questi giorni. 162 00:07:36,140 --> 00:07:39,220 Ma supponiamo di avere così tanti gli utenti che fanno tante cose 163 00:07:39,220 --> 00:07:42,480 che tipo di specie di bisogno di 65 gigabyte di memoria 164 00:07:42,480 --> 00:07:44,960 per gestire tutto questo utilizzo simultaneo? 165 00:07:44,960 --> 00:07:47,580 >> Ebbene, si può solo dire, dispiace, qualche numero di utenti 166 00:07:47,580 --> 00:07:48,840 solo non può accedere al sito. 167 00:07:48,840 --> 00:07:51,410 E questo è il provvedimento di ultima istanza, certamente. 168 00:07:51,410 --> 00:07:55,570 Oppure, come il funzionamento sistema, come Windows o Mac 169 00:07:55,570 --> 00:07:59,480 OS o Linux o Solaris o qualsiasi numero di altri sistemi operativi su quel server, 170 00:07:59,480 --> 00:08:01,280 poteva solo decidere, sai una cosa? 171 00:08:01,280 --> 00:08:03,780 Ho solo 64 gigabyte di RAM. 172 00:08:03,780 --> 00:08:05,440 I tipi di bisogno 65. 173 00:08:05,440 --> 00:08:06,210 Allora sai cosa? 174 00:08:06,210 --> 00:08:10,030 Ho intenzione di prendere 1 gigabyte valore dei dati nella RAM 175 00:08:10,030 --> 00:08:15,240 che era il meno recente accede e basta spostare su disco temporaneo, 176 00:08:15,240 --> 00:08:19,050 letteralmente copiarlo dal veloce memoria alla memoria più lenta 177 00:08:19,050 --> 00:08:24,000 in modo che possa poi gestire questo 65 ° necessità gigabyte per la memoria, 178 00:08:24,000 --> 00:08:25,650 fare qualche calcolo su di esso. 179 00:08:25,650 --> 00:08:28,580 Poi, quando ho finito di farlo, Mi limiterò a spostare che su disco, 180 00:08:28,580 --> 00:08:35,030 spostare l'altra RAM ho messo temporaneamente il disco nello hardware reale 181 00:08:35,030 --> 00:08:37,280 in modo che io sono una specie di multitasking. 182 00:08:37,280 --> 00:08:41,190 >> Così sto tipo di mettere le cose temporaneamente in questo spazio più lento 183 00:08:41,190 --> 00:08:44,159 così ho creare l'illusione di gestire tutti. 184 00:08:44,159 --> 00:08:45,290 Ma c'è un rallentamento. 185 00:08:45,290 --> 00:08:45,790 Perché? 186 00:08:45,790 --> 00:08:49,380 Ebbene, all'interno di questi duro dischi in questi giorni è che cosa? 187 00:08:49,380 --> 00:08:52,030 Piuttosto, ciò che rende un disco guidare diversa dalla RAM 188 00:08:52,030 --> 00:08:53,495 come meglio sapete ora? 189 00:08:53,495 --> 00:08:56,750 >> PUBBLICO: [INAUDIBLE] 190 00:08:56,750 --> 00:08:59,540 191 00:08:59,540 --> 00:09:01,445 >> DAVID MALAN: OK, è vero. 192 00:09:01,445 --> 00:09:02,320 PUBBLICO: [INAUDIBLE] 193 00:09:02,320 --> 00:09:05,440 194 00:09:05,440 --> 00:09:06,750 >> DAVID MALAN: così vero. 195 00:09:06,750 --> 00:09:13,709 E questo è un effetto collaterale o funzione del fatto che la RAM è effettivamente più veloce. 196 00:09:13,709 --> 00:09:15,750 E quindi si desidera usarlo per uso corrente. 197 00:09:15,750 --> 00:09:17,290 E un disco è più lento. 198 00:09:17,290 --> 00:09:19,630 Ma è permanente o non volatile. 199 00:09:19,630 --> 00:09:21,480 Quindi lo si utilizza per l'archiviazione a lungo termine. 200 00:09:21,480 --> 00:09:25,160 Ma in termini di implementazione, se guardo in alto 201 00:09:25,160 --> 00:09:29,297 quello che è chiamato un modulo DIMM, Dual Inline Memory Module, questo è ciò che un pezzo di RAM 202 00:09:29,297 --> 00:09:30,380 potrebbe tipicamente simile. 203 00:09:30,380 --> 00:09:35,050 >> Quindi, all'interno della nostra Mac-- che è un bug. 204 00:09:35,050 --> 00:09:41,080 All'interno dei nostri Mac e PC, il nostro desktop i computer avrebbero bastoni di memoria, 205 00:09:41,080 --> 00:09:43,220 come si farebbe li chiamano, o DIMM, o SIMM indietro 206 00:09:43,220 --> 00:09:44,970 nel giorno della memoria che assomigliano a questo. 207 00:09:44,970 --> 00:09:47,900 I nostri computer portatili probabilmente hanno cose che sono un terzo della dimensione o la metà. 208 00:09:47,900 --> 00:09:50,066 Sono un po 'più piccola, ma lo stesso poco idea-- 209 00:09:50,066 --> 00:09:52,110 pezzi di silicio verde wafer o plastica che 210 00:09:52,110 --> 00:09:56,237 ha piccoli chip neri su di loro con un sacco di cavi di interconnessione tutto. 211 00:09:56,237 --> 00:09:58,820 Si potrebbe avere un sacco di questi all'interno del computer. 212 00:09:58,820 --> 00:10:00,903 Ma l'asporto qui è è del tutto elettronico. 213 00:10:00,903 --> 00:10:03,130 C'è solo elettroni scorre su questo dispositivo. 214 00:10:03,130 --> 00:10:08,170 Al contrario, se guardiamo l'interno di un disco rigido 215 00:10:08,170 --> 00:10:10,760 e tirare su una foto qui, si sarebbe invece 216 00:10:10,760 --> 00:10:16,600 vedere qualcosa del genere, che ha l'elettricità 217 00:10:16,600 --> 00:10:17,950 che attraverso di essa alla fine. 218 00:10:17,950 --> 00:10:20,265 Ma ciò che salta anche fuori a voi di questa cosa? 219 00:10:20,265 --> 00:10:21,140 PUBBLICO: [INAUDIBLE] 220 00:10:21,140 --> 00:10:22,710 DAVID MALAN: Sì, non c'è a quanto pare parti in movimento. 221 00:10:22,710 --> 00:10:25,210 E 'un po' come un vecchio disco giocatore o giocatore fonografo. 222 00:10:25,210 --> 00:10:26,200 Ed è più o meno. 223 00:10:26,200 --> 00:10:28,950 E 'un po' più elaborato rispetto che-- mentre un giocatore fonografo usato 224 00:10:28,950 --> 00:10:33,150 scanalature nel record, questo in realtà utilizza minuscoli particelle magnetiche 225 00:10:33,150 --> 00:10:34,550 che non possiamo del tutto vedere. 226 00:10:34,550 --> 00:10:38,520 Ma se un po 'di particelle magnetiche assomiglia a questo, è considerato un 1. 227 00:10:38,520 --> 00:10:41,230 E se sembra che questo, nord-sud invece che a sud-est, 228 00:10:41,230 --> 00:10:42,252 potrebbe essere un 0. 229 00:10:42,252 --> 00:10:45,460 E vedremo domani come possiamo costruire da quello a cose più interessanti. 230 00:10:45,460 --> 00:10:47,590 >> Ma tutto ciò che è avuto modo di spostare fisicamente 231 00:10:47,590 --> 00:10:51,010 è sicuramente intenzione di andare più lento rispetto alla velocità della luce, 232 00:10:51,010 --> 00:10:53,250 che in teoria è quello un elettrone può scorrere a, 233 00:10:53,250 --> 00:10:54,620 anche se realisticamente non del tutto. 234 00:10:54,620 --> 00:10:56,900 devices-- Così meccanica molto più lento. 235 00:10:56,900 --> 00:10:58,320 Ma sono meno costosi. 236 00:10:58,320 --> 00:11:00,944 E si può andare bene così tanto Altri dati all'interno di essi. 237 00:11:00,944 --> 00:11:03,110 Quindi il fatto che ci esiste nel mondo qualcosa 238 00:11:03,110 --> 00:11:06,840 chiamato memoria virtuale, utilizzando un disco rigido come questo 239 00:11:06,840 --> 00:11:10,160 come se fosse RAM trasparente per l'utente, 240 00:11:10,160 --> 00:11:15,320 semplicemente spostando i dati dalla RAM al disco rigido, 241 00:11:15,320 --> 00:11:18,714 poi si spostano indietro quando è necessario nuovamente, crea il rallentamento. 242 00:11:18,714 --> 00:11:21,380 Perché hai letteralmente copiarlo da un luogo all'altro. 243 00:11:21,380 --> 00:11:25,100 E la cosa si sta copiandolo da e è in realtà da più lento rispetto alla RAM 244 00:11:25,100 --> 00:11:26,150 in cui si vuole che sia. 245 00:11:26,150 --> 00:11:29,030 >> La soluzione alternativa qui-- se non vi piace che rallentano, 246 00:11:29,030 --> 00:11:32,014 e la memoria virtuale è sorta di essere oberati, 247 00:11:32,014 --> 00:11:33,680 cosa c'è un'altra soluzione a questo problema? 248 00:11:33,680 --> 00:11:35,260 >> PUBBLICO: [INAUDIBLE] 249 00:11:35,260 --> 00:11:37,260 DAVID MALAN: Beh, aumentare la memoria virtuale 250 00:11:37,260 --> 00:11:39,135 ci permetterebbe di fare questo su una scala ancora più grande. 251 00:11:39,135 --> 00:11:43,540 Potremmo gestire 66 gigabyte vale la pena dei bisogni di memoria, o 67 gigabyte. 252 00:11:43,540 --> 00:11:45,830 Ma supponiamo che non mi piace Questo rallentamento, infatti 253 00:11:45,830 --> 00:11:49,380 Voglio disattivare virtuale memoria se è ancora possibile, 254 00:11:49,380 --> 00:11:52,350 cos'altro potevo buttare a questo problema per risolverlo, 255 00:11:52,350 --> 00:11:56,900 dove voglio gestire più utenti e altri requisiti di memoria 256 00:11:56,900 --> 00:11:59,100 di quanto io fisicamente ho al momento? 257 00:11:59,100 --> 00:12:02,600 >> PUBBLICO: [INAUDIBLE] 258 00:12:02,600 --> 00:12:04,800 259 00:12:04,800 --> 00:12:06,140 >> DAVID MALAN: Purtroppo no. 260 00:12:06,140 --> 00:12:09,850 Così la CPU e le anime che stanno in sono una risorsa limitata. 261 00:12:09,850 --> 00:12:13,280 E non c'è analogico in quel contesto. 262 00:12:13,280 --> 00:12:14,990 Buona domanda, però. 263 00:12:14,990 --> 00:12:19,270 Quindi, solo per essere chiari, troppo, se all'interno di questo computer è, 264 00:12:19,270 --> 00:12:24,510 diciamo, un bastone di RAM che sembra come questo-- e così chiameremo questo RAM. 265 00:12:24,510 --> 00:12:27,070 E qui è l'unità di disco rigido. 266 00:12:27,070 --> 00:12:30,130 E mi limiterò a disegnare questo pittoricamente come un piccolo cerchio. 267 00:12:30,130 --> 00:12:33,740 Ci sono 0 e 1 di in entrambi dati these--, faremo generalizzare come. 268 00:12:33,740 --> 00:12:38,030 >> E in sostanza, se un utente è l'esecuzione di un'applicazione come, 269 00:12:38,030 --> 00:12:46,070 diciamo, un sito web che richiede questo quantità di RAM per ogni utente, quello che sto proponendo, 270 00:12:46,070 --> 00:12:48,380 a titolo di questa cosa chiamato memoria virtuale, 271 00:12:48,380 --> 00:12:53,990 è quello di spostare solo temporaneamente che qui in modo che ora io 272 00:12:53,990 --> 00:12:57,810 può muovere la memoria di qualcun altro requisiti laggiù. 273 00:12:57,810 --> 00:13:00,420 E poi, quando questo è fatto, Posso copiare questo ripercorrere 274 00:13:00,420 --> 00:13:04,550 e questo va qui, in modo da spostare quello che volevo in là da qualche altra parte 275 00:13:04,550 --> 00:13:05,050 del tutto. 276 00:13:05,050 --> 00:13:07,820 >> Quindi c'è solo un sacco di switcheroo, è l'asporto qui. 277 00:13:07,820 --> 00:13:12,380 Quindi, se non ti piace questo, e non lo fanno vuole mettere nulla sul disco rigido, 278 00:13:12,380 --> 00:13:16,440 ciò che è una sorta di evidente soluzione di business della persona 279 00:13:16,440 --> 00:13:19,684 al problema, o al fonico soluzione, del resto, anche tu? 280 00:13:19,684 --> 00:13:21,950 >> PUBBLICO: [INAUDIBLE] 281 00:13:21,950 --> 00:13:24,750 >> DAVID MALAN: Sì, voglio dire letteralmente buttare soldi al problema. 282 00:13:24,750 --> 00:13:27,541 E in realtà, questa è la perfetta Segue ad alcuni di livello superiore 283 00:13:27,541 --> 00:13:28,870 discussioni del cloud computing. 284 00:13:28,870 --> 00:13:31,390 Perché un sacco di esso è motivato da decisioni finanziarie, 285 00:13:31,390 --> 00:13:33,040 nemmeno necessariamente tecnologica. 286 00:13:33,040 --> 00:13:37,830 Se 64 giga di RAM è troppo poco, bene, perché non ottenere 128 gigabyte di RAM? 287 00:13:37,830 --> 00:13:40,440 Perché non avere 256 gigabyte di RAM? 288 00:13:40,440 --> 00:13:41,732 Beh perchè no? 289 00:13:41,732 --> 00:13:42,608 >> PUBBLICO: [INAUDIBLE] 290 00:13:42,608 --> 00:13:44,482 DAVID MALAN: Beh, costa più soldi, certo. 291 00:13:44,482 --> 00:13:46,970 E se si dispone già di ricambio spazio su disco rigido, in modo efficace, 292 00:13:46,970 --> 00:13:51,407 o equivalentemente, spazio su disco rigido è così molto più economico si potrebbe anche usarlo. 293 00:13:51,407 --> 00:13:54,490 Così ancora una volta, c'è questo compromesso che abbiamo visto anche in precedenza in questa mattina, 294 00:13:54,490 --> 00:13:56,656 dove non c'è davvero necessariamente una risposta giusta, 295 00:13:56,656 --> 00:14:01,360 c'è solo una risposta migliore o peggiore sulla base di ciò che realmente interessano. 296 00:14:01,360 --> 00:14:04,500 >> Quindi c'è anche realtà tecnologiche. 297 00:14:04,500 --> 00:14:06,870 Non riesco a comprare un computer, Che io sappia, 298 00:14:06,870 --> 00:14:09,490 con un trilione di gigabyte di RAM al momento. 299 00:14:09,490 --> 00:14:11,540 E 'solo fisicamente non esiste. 300 00:14:11,540 --> 00:14:13,240 Quindi vi è un certo limite superiore. 301 00:14:13,240 --> 00:14:15,990 Ma se hai mai nemmeno effettuato acquisti per un Mac o un PC consumer, 302 00:14:15,990 --> 00:14:20,180 Anche, in genere non c'è questa curva di caratteristiche 303 00:14:20,180 --> 00:14:23,410 dove ci potrebbe essere una buona, una migliore e una miglior computer. 304 00:14:23,410 --> 00:14:25,730 >> E i rendimenti marginali sul vostro acquisto del dollaro 305 00:14:25,730 --> 00:14:30,227 il miglior computer contro il computer meglio 306 00:14:30,227 --> 00:14:32,560 potrebbe non essere altrettanto elevata come spendere un po 'più soldi 307 00:14:32,560 --> 00:14:35,599 e ottenere il computer migliore il buon computer. 308 00:14:35,599 --> 00:14:38,390 In altre parole, si sta pagando un premium per ottenere la parte superiore della linea. 309 00:14:38,390 --> 00:14:40,790 >> E quello che vedremo nel discussione del cloud computing 310 00:14:40,790 --> 00:14:44,940 è che ciò che è molto comune in questi giorni, e ciò che le aziende come Google 311 00:14:44,940 --> 00:14:50,560 presto popolare, non è stato pagato e costruzione di veramente elegante, costoso 312 00:14:50,560 --> 00:14:53,540 computer truccato con un sacco di tutto, 313 00:14:53,540 --> 00:15:00,140 ma piuttosto l'acquisto o la costruzione abbastanza computer modesti ma molti di loro, 314 00:15:00,140 --> 00:15:03,280 e l'utilizzo di qualcosa che è generalmente chiamato scala orizzontale invece 315 00:15:03,280 --> 00:15:04,320 di scala verticale. 316 00:15:04,320 --> 00:15:08,115 >> Così scala verticale significherebbe ottenere di più RAM, più rigido, più di tutto, 317 00:15:08,115 --> 00:15:10,187 e una sorta di investire verticalmente in hardware 318 00:15:10,187 --> 00:15:12,520 così si sta solo ricevendo il meglio del meglio del meglio, 319 00:15:12,520 --> 00:15:13,650 ma si sta pagando per questo. 320 00:15:13,650 --> 00:15:17,580 scala orizzontale è una sorta di ottenere il cose livello inferiore, il buon modello, 321 00:15:17,580 --> 00:15:19,922 o anche il modello di peggio, ma ottenere un sacco di loro. 322 00:15:19,922 --> 00:15:22,630 Ma non appena si ottiene un sacco di them-- per esempio, in questo caso, 323 00:15:22,630 --> 00:15:27,330 server web, se questo un server o un host web non è sufficiente, 324 00:15:27,330 --> 00:15:32,310 poi basta intuitivamente, la soluzione a questo problema di carico 325 00:15:32,310 --> 00:15:36,460 o sovraccarico sui server è o ottenere un server più grande 326 00:15:36,460 --> 00:15:40,770 o, quello che sto proponendo qui invece di scalatura verticale così dire, 327 00:15:40,770 --> 00:15:41,920 sarebbe, sai una cosa? 328 00:15:41,920 --> 00:15:43,580 Basta avere un secondo uno di questi. 329 00:15:43,580 --> 00:15:46,560 O forse anche ottenere un terzo. 330 00:15:46,560 --> 00:15:48,900 Ma ora abbiamo creato un problema di ingegneria 331 00:15:48,900 --> 00:15:51,920 dalla natura di questo business o una decisione finanziaria. 332 00:15:51,920 --> 00:15:54,312 Qual è il problema di ingegneria ora? 333 00:15:54,312 --> 00:15:56,040 >> PUBBLICO: [INAUDIBLE] 334 00:15:56,040 --> 00:15:59,740 >> DAVID MALAN: Sì, come si fa si collega li e- dispiace? 335 00:15:59,740 --> 00:16:00,651 >> PUBBLICO: [INAUDIBLE] 336 00:16:00,651 --> 00:16:02,400 DAVID MALAN: Destra, perché ho ancora have-- 337 00:16:02,400 --> 00:16:07,280 se mi reintrodurre in questo quadro, se questo è il mio computer portatile da qualche parte 338 00:16:07,280 --> 00:16:12,400 su internet, che ora è tra io e la società di cui stiamo parlando, 339 00:16:12,400 --> 00:16:17,960 ora devo capire, a cui assistente posso inviare questo particolare utente? 340 00:16:17,960 --> 00:16:25,090 E se c'è altri utenti, come questo, e poi questo qui, 341 00:16:25,090 --> 00:16:28,850 e forse questo è l'utente A, questo è utente B, questo è utente C, 342 00:16:28,850 --> 00:16:34,720 e questo è il server 1, 2, e 3-- ora una risposta intuitiva potrebbe qui essere solo, 343 00:16:34,720 --> 00:16:37,460 ti invieremo utente A a 1 e B per 2 e C 3. 344 00:16:37,460 --> 00:16:39,900 E siamo in grado di gestire 3 volte il numero di utenti. 345 00:16:39,900 --> 00:16:41,360 >> Ma questa è una semplificazione eccessiva. 346 00:16:41,360 --> 00:16:44,480 Come si fa a decidere chi mandare in cui? 347 00:16:44,480 --> 00:16:46,400 Quindi cerchiamo di ragionare attraverso questo. 348 00:16:46,400 --> 00:16:50,110 Quindi supponiamo che i computer A, B, e C sono clienti, 349 00:16:50,110 --> 00:16:53,972 ei server 1, 2 e 3 sono orizzontalmente in scala server. 350 00:16:53,972 --> 00:16:55,180 Quindi sono una sorta di identici. 351 00:16:55,180 --> 00:16:57,200 Sono tutti in esecuzione lo stesso software. 352 00:16:57,200 --> 00:16:59,770 E tutti possono fare la stessa cosa. 353 00:16:59,770 --> 00:17:01,520 Ma il motivo per cui abbiamo tre di loro è così 354 00:17:01,520 --> 00:17:04,710 che siamo in grado di gestire tre volte il numero di persone contemporaneamente. 355 00:17:04,710 --> 00:17:07,960 >> Così sappiamo dalla nostra discussione prima di pranzo 356 00:17:07,960 --> 00:17:11,460 che ci sia l'hardware in mezzo i computer portatili ei server. 357 00:17:11,460 --> 00:17:14,920 Ma ci limiteremo a una sorta di generalizzare che ora come Internet o la nuvola. 358 00:17:14,920 --> 00:17:18,707 Ma sappiamo che in casa mia, probabilmente c'è un router domestico. 359 00:17:18,707 --> 00:17:21,290 Vicino i server, probabilmente c'è un router, server DNS, DHCP. 360 00:17:21,290 --> 00:17:24,780 Non ci può essere qualsiasi cosa vogliamo che in questa storia. 361 00:17:24,780 --> 00:17:33,360 >> Quindi, come possiamo cominciare a decidere, quando l'utente A va a something.com, 362 00:17:33,360 --> 00:17:36,630 quale server per instradare l'utente? 363 00:17:36,630 --> 00:17:39,409 Come possiamo cominciare a raccontare questa storia? 364 00:17:39,409 --> 00:17:40,450 PUBBLICO: Il bilanciamento del carico? 365 00:17:40,450 --> 00:17:41,120 DAVID MALAN: Il bilanciamento del carico. 366 00:17:41,120 --> 00:17:42,502 Che cosa vuoi dire con questo? 367 00:17:42,502 --> 00:17:44,660 >> AUDIENCE: Ritornando dove il più utilizzo è 368 00:17:44,660 --> 00:17:47,472 e quale ha la la maggior parte delle risorse disponibili. 369 00:17:47,472 --> 00:17:49,930 DAVID MALAN: Ok, mi permetta introdurre un nuovo tipo di hardware 370 00:17:49,930 --> 00:17:53,627 che non abbiamo ancora discusso, che è esattamente questo, un bilanciamento del carico. 371 00:17:53,627 --> 00:17:54,960 Anche questo potrebbe essere solo un server. 372 00:17:54,960 --> 00:17:58,130 Potrebbe apparire esattamente come quella che abbiamo visto un momento fa. 373 00:17:58,130 --> 00:18:01,000 Un bilanciamento del carico è davvero solo un pezzo di software 374 00:18:01,000 --> 00:18:02,660 che si esegue su un pezzo di hardware. 375 00:18:02,660 --> 00:18:07,310 >> Oppure si può pagare un fornitore, come Citrix o altri, Cisco o altri. 376 00:18:07,310 --> 00:18:10,465 È possibile pagare per il proprio hardware, che è un bilanciamento del carico hardware. 377 00:18:10,465 --> 00:18:12,840 Ma questo significa solo che pre-installato il bilanciamento del carico 378 00:18:12,840 --> 00:18:15,580 software sul proprio hardware e venduto a voi tutti insieme. 379 00:18:15,580 --> 00:18:18,670 Quindi dovremo solo disegnare come rettangolo per i nostri scopi. 380 00:18:18,670 --> 00:18:22,040 >> Come ora faccio a implementare un sistema di bilanciamento del carico? 381 00:18:22,040 --> 00:18:28,150 In altre parole, quando l'utente A vuole visitare il mio sito, la loro richiesta in qualche modo 382 00:18:28,150 --> 00:18:31,070 o altro, probabilmente per mezzo di quelli router di cui abbiamo parlato in precedenza, 383 00:18:31,070 --> 00:18:33,750 sta per arrivare alla fine questo bilanciamento del carico, che poi 384 00:18:33,750 --> 00:18:36,210 ha bisogno di prendere una decisione di routing-like. 385 00:18:36,210 --> 00:18:38,320 Ma è di routing per l'ordinamento di uno scopo più alto ora. 386 00:18:38,320 --> 00:18:40,361 Non si tratta solo di ottenere dal punto A al punto 387 00:18:40,361 --> 00:18:44,730 B. Si tratta di decidere quale punto B è il migliore tra them-- 388 00:18:44,730 --> 00:18:46,660 1, 2, o 3 in questo caso. 389 00:18:46,660 --> 00:18:51,000 >> Allora, come faccio a decidere se andare a 1, a 2, a 3? 390 00:18:51,000 --> 00:18:55,180 Cosa potrebbe scatola nera, in modo da parlare, essere facendo al suo interno? 391 00:18:55,180 --> 00:18:57,880 Anche questo è un altro esempio in informatica di astrazione. 392 00:18:57,880 --> 00:19:02,410 Ho letteralmente disegnato un bilanciatore di carico come una scatola nera con inchiostro nero, dentro 393 00:19:02,410 --> 00:19:05,300 di cui è alcuni interessanti logica, o la magia anche, 394 00:19:05,300 --> 00:19:07,840 da cui deve venire un decision-- 1, 2 o 3. 395 00:19:07,840 --> 00:19:12,220 E l'ingresso è appena A. 396 00:19:12,220 --> 00:19:13,442 >> PUBBLICO: [INAUDIBLE] 397 00:19:13,442 --> 00:19:14,400 DAVID MALAN: mi dispiace? 398 00:19:14,400 --> 00:19:14,770 PUBBLICO: [INAUDIBLE] 399 00:19:14,770 --> 00:19:18,310 DAVID MALAN: Va bene, come potremmo categorizzare i tipi di transazioni 400 00:19:18,310 --> 00:19:19,095 Qui? 401 00:19:19,095 --> 00:19:23,772 >> PUBBLICO: Visualizzazione di una pagina web contro l'interrogazione di un database. 402 00:19:23,772 --> 00:19:24,980 DAVID MALAN: OK, questo è un bene. 403 00:19:24,980 --> 00:19:29,210 Quindi forse questo utente A vuole visualizzare una pagina web. 404 00:19:29,210 --> 00:19:32,954 E forse è anche contenuti statici, qualcosa che cambia raramente, se non mai. 405 00:19:32,954 --> 00:19:34,870 E che sembra un operazione piuttosto semplice. 406 00:19:34,870 --> 00:19:38,260 Così forse non ci resta arbitrariamente, ma ragionevolmente, dire, 407 00:19:38,260 --> 00:19:42,750 server 1, il suo scopo nella vita è per servire solo su contenuti statici, 408 00:19:42,750 --> 00:19:45,150 file che raramente, se mai, il cambiamento. 409 00:19:45,150 --> 00:19:46,870 Forse è le immagini sulla pagina. 410 00:19:46,870 --> 00:19:50,180 Forse è il testo sulla pagina o altro tale genere di cose poco interessanti, 411 00:19:50,180 --> 00:19:52,460 nulla transazionale, niente dinamica. 412 00:19:52,460 --> 00:19:57,000 >> Al contrario, se l'utente A sta controllando fuori del suo carrello della spesa che 413 00:19:57,000 --> 00:20:00,972 richiede un database, da qualche parte per memorizzare e ricordare tale operazione, ben 414 00:20:00,972 --> 00:20:02,680 forse tale richiesta dovrebbe andare al server 2. 415 00:20:02,680 --> 00:20:03,610 Quindi, questo è un bene. 416 00:20:03,610 --> 00:20:07,010 Così possiamo carico in base equilibrio il tipo di richieste. 417 00:20:07,010 --> 00:20:08,278 In quale altro modo si potrebbe fare questo? 418 00:20:08,278 --> 00:20:13,690 419 00:20:13,690 --> 00:20:14,686 Cos'altro-- 420 00:20:14,686 --> 00:20:17,382 >> PUBBLICO: Basato sul server di utilizzazione e capacità. 421 00:20:17,382 --> 00:20:18,340 DAVID MALAN: A destra, OK. 422 00:20:18,340 --> 00:20:19,950 Quindi, lei ha detto che in precedenza, Kareem. 423 00:20:19,950 --> 00:20:26,850 Che importa se forniamo un certo input su [INAUDIBLE] tra i server 1, 2, 424 00:20:26,850 --> 00:20:32,070 e 3 di questo bilanciamento del carico in modo che sono solo costantemente informato 425 00:20:32,070 --> 00:20:36,420 il bilanciamento del carico quale sia il loro stato è? 426 00:20:36,420 --> 00:20:39,842 Come, ehi, bilanciamento del carico, Sono al 50% di utilizzo. 427 00:20:39,842 --> 00:20:41,550 In altre parole, ho la metà, come molti utenti 428 00:20:41,550 --> 00:20:43,520 come posso effettivamente gestire in questo momento. 429 00:20:43,520 --> 00:20:45,480 Hey, bilanciamento del carico, sono al 100% di utilizzo. 430 00:20:45,480 --> 00:20:47,929 Hey, bilanciamento del carico, 0% di utilizzo. 431 00:20:47,929 --> 00:20:49,970 Il bilanciamento del carico, se si tratta di progettata in modo che 432 00:20:49,970 --> 00:20:53,990 può prendere in quei commenti come input, può allora 433 00:20:53,990 --> 00:20:57,420 decidere, ooh, il numero 2 è al 100%. 434 00:20:57,420 --> 00:21:01,440 Mi permetta di non inviare le richieste future a lui diverse dagli utenti già connessi. 435 00:21:01,440 --> 00:21:02,360 Questo ragazzo è allo 0%. 436 00:21:02,360 --> 00:21:03,940 Mandiamo un sacco di traffico a lui. 437 00:21:03,940 --> 00:21:05,480 Questo ragazzo ha detto che è al 50%. 438 00:21:05,480 --> 00:21:08,080 Mandiamo una parte del traffico a lui. 439 00:21:08,080 --> 00:21:12,012 >> Quindi sarebbe un ingrediente, che potremmo prendere in considerazione il carico. 440 00:21:12,012 --> 00:21:13,470 E sta andando a cambiare nel tempo. 441 00:21:13,470 --> 00:21:14,678 Così le decisioni cambieranno. 442 00:21:14,678 --> 00:21:17,350 Ecco, questo è davvero un buon tecnica, uno che è comunemente usato. 443 00:21:17,350 --> 00:21:18,410 Che altro potevamo fare? 444 00:21:18,410 --> 00:21:20,380 E facciamo in realtà solo riassumere qui. 445 00:21:20,380 --> 00:21:29,510 Così le decisioni qui potrebbero essere in base al tipo di traffico, lo chiamerò. 446 00:21:29,510 --> 00:21:32,220 Essa può essere basata sul carico. 447 00:21:32,220 --> 00:21:34,692 Vediamo se non possiamo venire con pochi altri. 448 00:21:34,692 --> 00:21:35,934 >> PUBBLICO: [INAUDIBLE] 449 00:21:35,934 --> 00:21:36,850 DAVID MALAN: Posizione. 450 00:21:36,850 --> 00:21:37,724 Ecco, questo è un buon compromesso. 451 00:21:37,724 --> 00:21:40,880 Così come si potrebbe posizione-- sfruttare queste informazioni? 452 00:21:40,880 --> 00:21:44,317 >> PUBBLICO: [INAUDIBLE] 453 00:21:44,317 --> 00:21:54,140 454 00:21:54,140 --> 00:21:57,040 >> DAVID MALAN: Oh, questo è un bene. 455 00:21:57,040 --> 00:21:59,450 E a quanti millisecondi sarebbe diminuire di 456 00:21:59,450 --> 00:22:02,466 in base a quello che abbiamo visto questa mattina, diresti? 457 00:22:02,466 --> 00:22:04,330 >> PUBBLICO: [INAUDIBLE] 458 00:22:04,330 --> 00:22:06,550 >> DAVID MALAN: Beh, in base sulle linee di traccia 459 00:22:06,550 --> 00:22:09,070 abbiamo visto in precedenza, che è solo una misura approssimativa di qualcosa, 460 00:22:09,070 --> 00:22:11,800 almeno il tempo necessario per i dati per arrivare da A a B 461 00:22:11,800 --> 00:22:16,140 si sente come qualcosa di locale era, che cosa, come 74 millisecondi, prendere o lasciare? 462 00:22:16,140 --> 00:22:19,200 E allora tutto 100 più, 200 più era probabilmente all'estero. 463 00:22:19,200 --> 00:22:22,110 E così sulla base che da sola, sembra ragionevole supporre 464 00:22:22,110 --> 00:22:25,310 che per un utente negli Stati Uniti per accedere a un server europea 465 00:22:25,310 --> 00:22:28,900 potrebbe richiedere due o tre volte purché, anche in millisecondi, 466 00:22:28,900 --> 00:22:31,280 di quanto potrebbe prendere se tale Server si trovavano qui 467 00:22:31,280 --> 00:22:33,370 geograficamente, o viceversa. 468 00:22:33,370 --> 00:22:35,120 Così, quando ho proposto precedenza che soprattutto 469 00:22:35,120 --> 00:22:37,880 una volta che si attraversa che 200 millisecondi soglia, prendere o lasciare, 470 00:22:37,880 --> 00:22:39,210 gli esseri umani cominciano a notare. 471 00:22:39,210 --> 00:22:42,960 E il percorso tracciato è solo assumendo, i dati non interessanti grezzi. 472 00:22:42,960 --> 00:22:46,570 Quando si dispone di un sito web, è necessario ottenere l'utente a scaricare immagini o film 473 00:22:46,570 --> 00:22:49,150 file, molto testo, le richieste successive. 474 00:22:49,150 --> 00:22:53,116 Abbiamo visto quando abbiamo visitato, che cosa era esso, Facebook o Amazon in precedenza, 475 00:22:53,116 --> 00:22:55,490 c'è un sacco di roba che deve essere scaricato. 476 00:22:55,490 --> 00:22:56,573 Quindi, che sta andando a sommare. 477 00:22:56,573 --> 00:23:00,259 Così multi-secondi potrebbe Non essere irragionevole. 478 00:23:00,259 --> 00:23:01,800 Così buono, la geografia è un ingrediente. 479 00:23:01,800 --> 00:23:05,920 Quindi, in realtà, come le aziende Akamai, se avete sentito parlare di loro, 480 00:23:05,920 --> 00:23:10,000 o altri hanno da tempo preso geografia in considerazione. 481 00:23:10,000 --> 00:23:14,170 E si scopre che per natura di un indirizzo IP, indirizzo IP del mio portatile, 482 00:23:14,170 --> 00:23:18,277 si può dedurre, con una certa probabilità, dove si trovi nel mondo. 483 00:23:18,277 --> 00:23:20,110 E infatti non c'è servizi di terzi voi 484 00:23:20,110 --> 00:23:24,480 può pagare che mantengono i database di indirizzi IP e aree geografiche 485 00:23:24,480 --> 00:23:28,660 che con elevata sicurezza sarà vero quando gli viene chiesto, quale parte del mondo 486 00:23:28,660 --> 00:23:30,090 è questo indirizzo IP? 487 00:23:30,090 --> 00:23:32,130 >> E così, infatti, che cosa altre aziende utilizzano questo? 488 00:23:32,130 --> 00:23:35,900 Se si dispone di Hulu o Netflix, se siete mai stati viaggia all'estero, 489 00:23:35,900 --> 00:23:38,640 e si tenta di vedere qualcosa su Hulu, e non sei negli Stati Uniti, 490 00:23:38,640 --> 00:23:41,280 si potrebbe vedere un messaggio dicendo, non negli Stati Uniti. 491 00:23:41,280 --> 00:23:43,208 Siamo spiacenti, non è possibile visualizzare questo contenuto. 492 00:23:43,208 --> 00:23:44,420 >> PUBBLICO: [INAUDIBLE] 493 00:23:44,420 --> 00:23:46,020 >> DAVID MALAN: Oh, davvero? 494 00:23:46,020 --> 00:23:48,480 Ma sì, in modo che in realtà è una perfetta applicazione 495 00:23:48,480 --> 00:23:51,060 di qualcosa di molto tecnico ad un problema reale. 496 00:23:51,060 --> 00:23:55,100 Se si dovesse VPN da Europa o in Asia o in qualsiasi 497 00:23:55,100 --> 00:23:57,950 in tutto il mondo per la vostra aziendale sede a New York 498 00:23:57,950 --> 00:24:00,670 o ovunque tu sia, sei andando a creare l'aspetto 499 00:24:00,670 --> 00:24:03,580 a siti web esterni che si sta effettivamente a New York, 500 00:24:03,580 --> 00:24:05,660 anche se sei fisicamente abbastanza lontano. 501 00:24:05,660 --> 00:24:08,057 >> Ora si che l'utente sta per sai che sei ovviamente via. 502 00:24:08,057 --> 00:24:11,140 Ma si sta anche andando a sentire perché di tali millisecondi aggiuntivi. 503 00:24:11,140 --> 00:24:14,510 Tale distanza supplementare e le crittografia che sta accadendo nel VPN 504 00:24:14,510 --> 00:24:15,760 sta per rallentare le cose. 505 00:24:15,760 --> 00:24:17,680 Così può o non può essere una grande esperienza. 506 00:24:17,680 --> 00:24:21,050 Ma Hulu e Netflix stanno andando a vedere voi come seduto da qualche parte a New York, 507 00:24:21,050 --> 00:24:23,817 come hai chiaramente raccolte. 508 00:24:23,817 --> 00:24:25,150 Che una perfetta soluzione a questo. 509 00:24:25,150 --> 00:24:28,490 >> Va bene, quindi la geografia è una decisione. 510 00:24:28,490 --> 00:24:32,290 Cos'altro potremmo usare per decidere come per instradare il traffico da A, B, e C 511 00:24:32,290 --> 00:24:37,040 1, 2, e 3, di nuovo, mettendo il cappello di ingegneria su? 512 00:24:37,040 --> 00:24:38,850 Tutto questo suona molto complicato. 513 00:24:38,850 --> 00:24:41,490 Uh, non so nemmeno dove ad avviare l'attuazione quelli. 514 00:24:41,490 --> 00:24:44,450 Dammi qualcosa che è più semplice. 515 00:24:44,450 --> 00:24:48,160 Qual è il modo più semplice a prendere questa decisione? 516 00:24:48,160 --> 00:24:49,840 >> PUBBLICO: Il server disponibili? 517 00:24:49,840 --> 00:24:51,650 >> DAVID MALAN: Il server è disponibile? 518 00:24:51,650 --> 00:24:53,970 Quindi, non è male. 519 00:24:53,970 --> 00:24:54,470 Quello è buono. 520 00:24:54,470 --> 00:24:56,260 Questo è una sorta di caldi e sfumati di carico. 521 00:24:56,260 --> 00:24:58,070 Quindi cerchiamo di mantenere che nella categoria di carico. 522 00:24:58,070 --> 00:25:00,010 Se sei disponibile, io sono solo intenzione di inviare i dati lì. 523 00:25:00,010 --> 00:25:01,343 Ma che potrebbe ritorcersi contro in fretta. 524 00:25:01,343 --> 00:25:05,720 Perché se uso questa logica, e se io Chiedi sempre 1, sei su, sei su, 525 00:25:05,720 --> 00:25:08,970 sei su, se la risposta è sempre sì, Ho intenzione di inviare il 100% del traffico 526 00:25:08,970 --> 00:25:11,060 a lui, 0% per tutti gli altri. 527 00:25:11,060 --> 00:25:14,430 E a un certo punto, stiamo andando a colpire che il rallentamento o un sito non disponibile. 528 00:25:14,430 --> 00:25:17,630 Allora, qual è leggermente migliore rispetto che ma ancora piuttosto semplice 529 00:25:17,630 --> 00:25:22,412 e non così intelligente come prendere tutto questi dati aggiuntivi in ​​considerazione? 530 00:25:22,412 --> 00:25:23,992 >> PUBBLICO: Il costo per server. 531 00:25:23,992 --> 00:25:25,200 DAVID MALAN: Costo per server. 532 00:25:25,200 --> 00:25:28,010 OK, così mi permetta di buttare quel nella categoria di carico, anche. 533 00:25:28,010 --> 00:25:30,790 Perché ciò che troverete in una società, too-- che se si 534 00:25:30,790 --> 00:25:32,790 aggiornare i server nel tempo o comprare di più, 535 00:25:32,790 --> 00:25:36,242 si potrebbe non essere in grado di ottenere esattamente le stesse versioni di hardware. 536 00:25:36,242 --> 00:25:37,450 Perché cade fuori moda. 537 00:25:37,450 --> 00:25:38,491 Non è possibile acquistare più. 538 00:25:38,491 --> 00:25:39,360 I prezzi cambiano. 539 00:25:39,360 --> 00:25:42,500 >> Così si potrebbe avere i server disparati nel cluster, per così dire. 540 00:25:42,500 --> 00:25:43,890 Questo è totalmente bene. 541 00:25:43,890 --> 00:25:47,100 Ma l'hardware del prossimo anno potrebbe essere due volte più veloce, 542 00:25:47,100 --> 00:25:49,390 due volte in grado, come quest'anno. 543 00:25:49,390 --> 00:25:51,500 Quindi possiamo buttare quel nella categoria carico. 544 00:25:51,500 --> 00:25:54,260 Questo ciclo di feedback tra il 1, 2, e 3 nel bilanciamento del carico 545 00:25:54,260 --> 00:25:57,650 potrebbe certamente dire che, Hey, sono al 50% della capacità. 546 00:25:57,650 --> 00:26:00,100 Ma a proposito, ho anche il doppio dei nuclei. 547 00:26:00,100 --> 00:26:02,319 Utilizzare tali informazioni. 548 00:26:02,319 --> 00:26:05,110 Anche simpler-- e questo sta andando essere un tema in informatica. 549 00:26:05,110 --> 00:26:08,990 In caso di dubbio, o quando si desidera un semplice soluzione che funziona generalmente ben 550 00:26:08,990 --> 00:26:12,730 nel tempo, non scegliere lo stesso server di tutto il tempo, ma prego-- 551 00:26:12,730 --> 00:26:14,039 >> PUBBLICO: uno a caso? 552 00:26:14,039 --> 00:26:15,330 DAVID MALAN: --a server casuale. 553 00:26:15,330 --> 00:26:16,780 Sì, scegliere uno o l'altro. 554 00:26:16,780 --> 00:26:21,160 Così casualità è in realtà questo ingrediente molto potente 555 00:26:21,160 --> 00:26:23,170 in informatica, e in ingegneria più 556 00:26:23,170 --> 00:26:27,160 in generale, soprattutto quando si vuole per prendere una decisione semplice rapidamente 557 00:26:27,160 --> 00:26:30,480 senza complicare con tutti di questi molto intelligente, ma anche 558 00:26:30,480 --> 00:26:34,330 molto intelligenti, soluzioni che richiedono tanto più engineering, tutte 559 00:26:34,330 --> 00:26:36,220 l'altro pensiero, quando in realtà, perché non posso 560 00:26:36,220 --> 00:26:39,200 solo tipo di lanciare una moneta, o di un tre lati moneta in questo caso, 561 00:26:39,200 --> 00:26:41,690 e decidere se andare 1, 2, 3? 562 00:26:41,690 --> 00:26:45,610 >> Questo potrebbe ritorcersi probabilisticamente, ma proprio come le probabilità 563 00:26:45,610 --> 00:26:48,860 di lanciare di nuovo la testa e Ancora e ancora e ancora 564 00:26:48,860 --> 00:26:53,870 e ancora e ancora è possibile in eccellente reality--, super improbabile. 565 00:26:53,870 --> 00:26:58,170 Così nel corso del tempo, le probabilità sono solo l'invio agli utenti in modo casuale 566 00:26:58,170 --> 00:27:00,660 1, 2, e 3 sta per lavorare perfettamente bene. 567 00:27:00,660 --> 00:27:03,380 E questa è una tecnica generalmente conosciuto come round robin. 568 00:27:03,380 --> 00:27:05,160 >> O in realtà, non è questo round robin. 569 00:27:05,160 --> 00:27:06,980 Questo sarebbe il metodo casuale. 570 00:27:06,980 --> 00:27:09,250 E se si vuole essere ancora un po 'più semplice di quello, 571 00:27:09,250 --> 00:27:12,820 round robin sarebbe, prima persona va 1, seconda persona a 2, terza persona 572 00:27:12,820 --> 00:27:16,056 3, quarta scrivere 1. 573 00:27:16,056 --> 00:27:17,430 E qui sta il round robin. 574 00:27:17,430 --> 00:27:19,580 È solo tipo di andare in giro in un ciclo. 575 00:27:19,580 --> 00:27:21,300 >> Ora, si dovrebbe essere intelligenti su di esso. 576 00:27:21,300 --> 00:27:26,490 Si consiglia di non inviare ciecamente l'utente numero del server uno se ciò è il caso? 577 00:27:26,490 --> 00:27:30,060 578 00:27:30,060 --> 00:27:32,870 Se è a capacità massima, o è solo non è più reattivo. 579 00:27:32,870 --> 00:27:35,270 Quindi idealmente si vuole un po ' tipo di ciclo di feedback. 580 00:27:35,270 --> 00:27:38,040 In caso contrario, è sufficiente inviare tutti degli utenti in un vicolo cieco. 581 00:27:38,040 --> 00:27:40,790 Ma che può essere preso in considerazione, anche. 582 00:27:40,790 --> 00:27:46,520 >> Quindi non sotto apprezzare il valore della solo casualità, che è molto spesso 583 00:27:46,520 --> 00:27:48,970 una soluzione a questi tipi di problemi. 584 00:27:48,970 --> 00:27:51,580 E noi scriviamo round robin. 585 00:27:51,580 --> 00:27:55,090 Così come alcune aziende implementano round robin o casualità 586 00:27:55,090 --> 00:27:56,840 o qualsiasi di tali decisioni? 587 00:27:56,840 --> 00:28:01,840 Beh purtroppo, fare cose come questa. 588 00:28:01,840 --> 00:28:03,660 Mi permetta di tirare un altro screenshot rapido. 589 00:28:03,660 --> 00:28:13,052 590 00:28:13,052 --> 00:28:14,470 >> A dire il vero, facciamo due. 591 00:28:14,470 --> 00:28:17,420 592 00:28:17,420 --> 00:28:21,370 Non so perché siamo ottenere tutti questi piatti. 593 00:28:21,370 --> 00:28:22,280 Questo è molto strano. 594 00:28:22,280 --> 00:28:31,714 595 00:28:31,714 --> 00:28:33,630 Va bene, che cosa realmente vogliamo è uno screenshot. 596 00:28:33,630 --> 00:28:36,990 597 00:28:36,990 --> 00:28:40,100 Questo è strano. 598 00:28:40,100 --> 00:28:42,930 Va bene, quindi posso falsificare questo. 599 00:28:42,930 --> 00:28:46,080 Io non so quanto lontano Voglio continuare a scorrimento. 600 00:28:46,080 --> 00:28:53,220 >> Quindi molto spesso, vi ritroverete ad un indirizzo come www.2.acme.com, 601 00:28:53,220 --> 00:28:56,030 forse www.3 o 4 o 5. 602 00:28:56,030 --> 00:28:57,424 E tenere d'occhio per questo. 603 00:28:57,424 --> 00:28:58,590 Non si vede spesso. 604 00:28:58,590 --> 00:29:02,621 Ma quando lo fai, che tipo di tende a essere più grande, più anziani, aziende stodgier 605 00:29:02,621 --> 00:29:05,370 che in realtà non tecnologicamente sembrano sapere quello che stanno facendo. 606 00:29:05,370 --> 00:29:08,150 E si vede questo su tech a volte, i più grandi. 607 00:29:08,150 --> 00:29:09,270 >> Così che cosa stanno facendo? 608 00:29:09,270 --> 00:29:11,890 Come stanno attuando il bilanciamento del carico, sarebbe sembrare? 609 00:29:11,890 --> 00:29:15,986 Se vi trovate come il digitazione dell'utente www.something.com, 610 00:29:15,986 --> 00:29:19,760 e improvvisamente ci sei www.2.something.com, 611 00:29:19,760 --> 00:29:21,866 ciò che ha loro carico bilanciatore probabilmente fatto? 612 00:29:21,866 --> 00:29:22,741 PUBBLICO: [INAUDIBLE] 613 00:29:22,741 --> 00:29:28,210 614 00:29:28,210 --> 00:29:31,079 >> DAVID MALAN: Sì, in modo che il bilanciamento del carico è presumibilmente 615 00:29:31,079 --> 00:29:33,870 prendere una decisione sulla base di una delle questi decisionale processes-- 616 00:29:33,870 --> 00:29:35,210 in realtà non importa quale. 617 00:29:35,210 --> 00:29:38,650 Ma tanto come ho disegnato il i numeri sul tabellone qui, 618 00:29:38,650 --> 00:29:40,650 i server non sono solo chiamato 1, 2 e 3. 619 00:29:40,650 --> 00:29:43,870 Probabilmente stanno chiamati www1, www2, WWW3. 620 00:29:43,870 --> 00:29:47,200 E si scopre che dentro di una richiesta HTTP è questa caratteristica. 621 00:29:47,200 --> 00:29:48,950 E ho intenzione di simulare questo come segue. 622 00:29:48,950 --> 00:29:53,230 >> Sto per aprire quello stesso scheda di rete sviluppatore come prima solo 623 00:29:53,230 --> 00:29:55,560 in modo che possiamo vedere cosa sta succedendo sul sotto la cappa. 624 00:29:55,560 --> 00:29:57,130 Ho intenzione di cancellare lo schermo. 625 00:29:57,130 --> 00:30:03,420 E ho intenzione di andare, andiamo dire, http://harvard.edu. 626 00:30:03,420 --> 00:30:06,560 Ora per qualsiasi motivi di lavoro, di Harvard 627 00:30:06,560 --> 00:30:08,930 ha deciso, come molti, molti altri siti web, 628 00:30:08,930 --> 00:30:12,712 per standardizzare la sua sito web su www.harvard.edu 629 00:30:12,712 --> 00:30:14,420 sia per la tecnica e ragioni di marketing. 630 00:30:14,420 --> 00:30:16,326 E 'solo un po' di Vogue per avere il www. 631 00:30:16,326 --> 00:30:20,500 >> Quindi il server di Harvard ha per reindirizzare qualche modo l'utente, 632 00:30:20,500 --> 00:30:23,830 Come continuo a dire, da un URL all'altro. 633 00:30:23,830 --> 00:30:24,670 Come funziona? 634 00:30:24,670 --> 00:30:26,740 Beh, mi permetta di andare avanti e premi invio. 635 00:30:26,740 --> 00:30:30,830 E notare l'URL davvero in fretta cambiato in www.harvard.edu. 636 00:30:30,830 --> 00:30:35,560 Lasciatemi scorrere indietro in questo la storia e fare clic su questo di debug 637 00:30:35,560 --> 00:30:37,650 informazioni di diagnostica, se si vuole. 638 00:30:37,650 --> 00:30:39,170 Fammi vedere la mia richiesta. 639 00:30:39,170 --> 00:30:41,020 >> Quindi, ecco la richiesta che ho fatto. 640 00:30:41,020 --> 00:30:44,870 E si noti che è coerente con il tipo di richiesta che ho fatto di Facebook prima. 641 00:30:44,870 --> 00:30:48,010 Ma notare la risposta. 642 00:30:48,010 --> 00:30:50,430 Che cosa c'è di diverso in la risposta questa volta? 643 00:30:50,430 --> 00:30:51,890 >> PUBBLICO: [INAUDIBLE] 644 00:30:51,890 --> 00:30:54,290 >> DAVID MALAN: Sì, quindi non è un 200 OK. 645 00:30:54,290 --> 00:30:56,130 Non è un 404 Not Found. 646 00:30:56,130 --> 00:31:00,150 Si tratta di un 301 Spostato in modo permanente, che è una specie di uno strano modo di dire, 647 00:31:00,150 --> 00:31:05,270 Harvard ha aumentato e si è trasferito altrove per www.harvard.edu. 648 00:31:05,270 --> 00:31:08,220 Le 301 significa che questo è un redirect. 649 00:31:08,220 --> 00:31:12,812 E al quale deve l'utente a quanto pare essere reindirizzato? 650 00:31:12,812 --> 00:31:15,520 C'è un bocconcino aggiuntivo di informazioni privilegiate quella busta. 651 00:31:15,520 --> 00:31:19,650 E ognuna di queste linee sarà ora iniziare a chiamare un header HTTP. 652 00:31:19,650 --> 00:31:23,620 Header è solo un valore chiave pair-- qualcosa colon qualcosa. 653 00:31:23,620 --> 00:31:24,850 E 'un pezzo di informazione. 654 00:31:24,850 --> 00:31:27,131 Dove dovrebbe la nuova posizione pare essere? 655 00:31:27,131 --> 00:31:31,120 656 00:31:31,120 --> 00:31:33,692 Si noti l'ultima riga tra tutti quei intestazioni. 657 00:31:33,692 --> 00:31:34,940 >> PUBBLICO: [INAUDIBLE] 658 00:31:34,940 --> 00:31:37,148 >> DAVID MALAN: Sì, quindi non c'è Informazioni aggiuntive. 659 00:31:37,148 --> 00:31:40,120 La prima linea che ho evidenziato dice 301 Moved Permanently. 660 00:31:40,120 --> 00:31:42,820 Bene, dove si è si è trasferita? 661 00:31:42,820 --> 00:31:45,340 L'ultima line-- e non lo fanno devono essere in questo ordine. 662 00:31:45,340 --> 00:31:47,020 Può essere casuale. 663 00:31:47,020 --> 00:31:52,120 Località colon significa, hey del browser, vai a questo URL, invece. 664 00:31:52,120 --> 00:31:55,180 >> Così browser capire HTTP redirect. 665 00:31:55,180 --> 00:31:57,540 E questo è molto, molto modo comune di rimbalzo 666 00:31:57,540 --> 00:31:59,680 l'utente da un luogo all'altro. 667 00:31:59,680 --> 00:32:02,660 Per esempio, se hai mai provato a visitare un sito web che non sei 668 00:32:02,660 --> 00:32:06,360 effettuato l'accesso, si potrebbe improvvisamente trovare come a un nuovo URL del tutto di essere 669 00:32:06,360 --> 00:32:07,530 richiesto il login. 670 00:32:07,530 --> 00:32:08,400 >> Come funziona? 671 00:32:08,400 --> 00:32:10,920 Il server è probabilmente l'invio di un 301. 672 00:32:10,920 --> 00:32:14,510 Ci sono anche altri numeri, come 302, un po 'diversa nel significato, 673 00:32:14,510 --> 00:32:16,490 inviati a un altro URL. 674 00:32:16,490 --> 00:32:18,770 E poi il server, una volta effettuato l'accesso, 675 00:32:18,770 --> 00:32:22,000 ti invierà di nuovo a dove in realtà previsto. 676 00:32:22,000 --> 00:32:27,700 >> Che cosa, dunque, sono poco siti web progettati facendo? 677 00:32:27,700 --> 00:32:31,340 Quando si visita www.acme.com, e hanno appena 678 00:32:31,340 --> 00:32:35,490 capita di avere chiamato i loro server www1, www2, WWW3, e così via, 679 00:32:35,490 --> 00:32:39,100 sono molto simply-- che è giusto, ma molto 680 00:32:39,100 --> 00:32:46,080 sorta di foolishly-- si reindirizzamento a un server in realtà in modo diverso nome. 681 00:32:46,080 --> 00:32:48,650 E funziona perfettamente bene. 682 00:32:48,650 --> 00:32:49,930 E 'bello e facile. 683 00:32:49,930 --> 00:32:52,200 >> Abbiamo visto come sarebbe fatto sotto la cappa 684 00:32:52,200 --> 00:32:53,490 nella busta virtuale. 685 00:32:53,490 --> 00:32:56,450 Ma perché è questo senza dubbio un decisione sbagliata di ingegneria? 686 00:32:56,450 --> 00:33:00,345 E perché sono una sorta di condiscendente verso questo particolare ingegneria 687 00:33:00,345 --> 00:33:00,845 approccio? 688 00:33:00,845 --> 00:33:06,420 689 00:33:06,420 --> 00:33:07,850 Spiegare perché questo è male. 690 00:33:07,850 --> 00:33:09,375 Ben? 691 00:33:09,375 --> 00:33:10,250 PUBBLICO: [INAUDIBLE] 692 00:33:10,250 --> 00:33:12,864 693 00:33:12,864 --> 00:33:16,030 DAVID MALAN: Ogni server avrebbe dovuto avere un duplicato del sito. 694 00:33:16,030 --> 00:33:16,738 Sono d'accordo con questo. 695 00:33:16,738 --> 00:33:19,490 E infatti, questo è quello che sto supponendo per tutta questa storia, 696 00:33:19,490 --> 00:33:22,104 poiché se wanted-- bene in realtà, tranne per Dan precedenza 697 00:33:22,104 --> 00:33:25,270 suggestione, dove se si dispone di diverso server facendo cose diverse, quindi 698 00:33:25,270 --> 00:33:27,740 forse potrebbero in realtà essere funzionalmente fare cose diverse. 699 00:33:27,740 --> 00:33:30,698 >> Ma anche allora, ad un certo punto, la vostra base di dati sta per essere sovraccaricato. 700 00:33:30,698 --> 00:33:33,030 Il server attivi statici sta per arrivare sovraccarico. 701 00:33:33,030 --> 00:33:34,850 Così ad un certo punto, siamo indietro a questa storia, dove abbiamo 702 00:33:34,850 --> 00:33:36,475 bisogno di più copie della stessa cosa. 703 00:33:36,475 --> 00:33:37,395 Quindi sono d'accordo con questo. 704 00:33:37,395 --> 00:33:38,270 PUBBLICO: [INAUDIBLE] 705 00:33:38,270 --> 00:33:42,340 706 00:33:42,340 --> 00:33:45,350 >> DAVID MALAN: Ok, alcune pagine potrebbe essere sproporzionatamente popolare. 707 00:33:45,350 --> 00:33:50,460 E così fissarsi su un indirizzo non è necessariamente la cosa migliore. 708 00:33:50,460 --> 00:33:51,110 [INAUDIBLE]? 709 00:33:51,110 --> 00:33:51,985 >> PUBBLICO: [INAUDIBLE] 710 00:33:51,985 --> 00:33:54,770 711 00:33:54,770 --> 00:33:57,623 >> DAVID MALAN: Che cosa vuoi dire con questo? 712 00:33:57,623 --> 00:33:58,498 PUBBLICO: [INAUDIBLE] 713 00:33:58,498 --> 00:34:03,820 714 00:34:03,820 --> 00:34:05,072 >> DAVID MALAN: Sì, esattamente. 715 00:34:05,072 --> 00:34:07,280 Quindi non si vuole necessariamente have-- certamente 716 00:34:07,280 --> 00:34:11,370 non vogliono avere i vostri utenti digitando manualmente www1 o www2. 717 00:34:11,370 --> 00:34:14,550 Dal punto di vista di branding, è appena sembra un po 'ridicolo. 718 00:34:14,550 --> 00:34:17,340 Se si desidera solo una sorta di pulito, esperienza elegante, 719 00:34:17,340 --> 00:34:20,364 Avendo questi sorta di casuale URL numerati non è veramente buono. 720 00:34:20,364 --> 00:34:22,780 Perché allora gli utenti sono sicuramente andando a copiare e incollare 721 00:34:22,780 --> 00:34:24,449 in e-mail o messaggi istantanei. 722 00:34:24,449 --> 00:34:25,659 >> Ora sono di moltiplicazione. 723 00:34:25,659 --> 00:34:28,600 Ora si sta sorta di confondere la vostra meno pubblico tecnico, che pensa 724 00:34:28,600 --> 00:34:32,239 l'indirizzo web è www2.something.com. 725 00:34:32,239 --> 00:34:35,434 Non c'è una semantica convincenti per questo. 726 00:34:35,434 --> 00:34:38,100 Succede solo per essere un sottostante dettaglio tecnico che hai 727 00:34:38,100 --> 00:34:40,190 numerati i server in questo modo. 728 00:34:40,190 --> 00:34:45,760 >> E peggio ancora, che cosa succede se, per esempio, forse intorno a Natale quando 729 00:34:45,760 --> 00:34:50,090 business è veramente esplodendo, hai www1 attraverso www99, 730 00:34:50,090 --> 00:34:53,530 ma in gennaio e febbraio e poi, si spegne la metà di quelli 731 00:34:53,530 --> 00:34:56,440 in modo da avere solo www1 attraverso www50? 732 00:34:56,440 --> 00:35:01,963 Qual è l'implicazione che ora molto ragionevole decisione aziendale? 733 00:35:01,963 --> 00:35:02,838 PUBBLICO: [INAUDIBLE] 734 00:35:02,838 --> 00:35:05,628 735 00:35:05,628 --> 00:35:07,752 DAVID MALAN: È necessario la gestione di tutti coloro che sono ancora. 736 00:35:07,752 --> 00:35:10,515 PUBBLICO: [INAUDIBLE] 737 00:35:10,515 --> 00:35:11,390 DAVID MALAN: Esattamente. 738 00:35:11,390 --> 00:35:12,681 Questo è il tipo di pescato lì. 739 00:35:12,681 --> 00:35:16,800 Se i clienti hanno l'abitudine di cose bookmarking, inviandoli, basta 740 00:35:16,800 --> 00:35:19,351 salvare l'URL da qualche parte, o se è solo nella loro auto 741 00:35:19,351 --> 00:35:22,350 completare nel proprio browser in modo che siano in realtà non intenzionalmente digitando, 742 00:35:22,350 --> 00:35:25,560 è solo accadendo, potrebbero, per 11 mesi l'anno 743 00:35:25,560 --> 00:35:27,190 in modo efficace, in un vicolo cieco. 744 00:35:27,190 --> 00:35:30,100 E solo il più astuto di gli utenti sta per realizzare, 745 00:35:30,100 --> 00:35:32,040 forse dovrei manualmente rimuovere questo numero. 746 00:35:32,040 --> 00:35:35,610 Voglio dire, non è solo accadrà con molti utenti, così male per il business, 747 00:35:35,610 --> 00:35:37,750 ingegneria implementazione male saggio. 748 00:35:37,750 --> 00:35:40,230 >> Ma per fortuna, non è nemmeno necessario. 749 00:35:40,230 --> 00:35:43,120 Risulta che ciò bilanciatori di carico possono fare 750 00:35:43,120 --> 00:35:48,130 è invece di dire, quando A fa un richiesta-- hey A, andare a 1. 751 00:35:48,130 --> 00:35:50,280 In altre parole, invece di invio che reindirizzano 752 00:35:50,280 --> 00:35:53,540 in modo tale che passo uno in questo processo è in viaggio qui, 753 00:35:53,540 --> 00:35:55,280 egli è poi detto di andare altrove. 754 00:35:55,280 --> 00:35:57,530 E così passo tre è, se ne va altrove. 755 00:35:57,530 --> 00:36:04,600 >> È invece possibile continuare a percorso, per continuare ad usare quel termine, tutti i dati di un 756 00:36:04,600 --> 00:36:10,590 attraverso il bilanciamento del carico in modo che lui mai contatti 1, 2, o 3 direttamente. 757 00:36:10,590 --> 00:36:15,150 Tutto il traffico venga "instradato" dal bilanciamento del carico stesso. 758 00:36:15,150 --> 00:36:17,524 E così ora siamo una sorta di volutamente confondendo i confini 759 00:36:17,524 --> 00:36:18,690 tra questi vari dispositivi. 760 00:36:18,690 --> 00:36:20,930 Un bilanciamento del carico può dati di percorso. 761 00:36:20,930 --> 00:36:22,435 E 'solo una funzione che ha. 762 00:36:22,435 --> 00:36:25,420 >> Quindi un bilanciamento del carico, troppo, e ' un pezzo di software, davvero. 763 00:36:25,420 --> 00:36:27,130 E un router è un pezzo di software. 764 00:36:27,130 --> 00:36:29,660 E si può assolutamente avere due pezzi di software all'interno 765 00:36:29,660 --> 00:36:34,000 di un computer fisico così un carico balancer può fare queste cose multiple. 766 00:36:34,000 --> 00:36:36,130 >> Quindi c'è un altro modo per fare questo, che in realtà 767 00:36:36,130 --> 00:36:39,670 risale al tipo di principi primi di DNS, di cui abbiamo parlato 768 00:36:39,670 --> 00:36:40,230 prima della pausa. 769 00:36:40,230 --> 00:36:41,634 DNS era Domain Name System. 770 00:36:41,634 --> 00:36:43,550 Ricorda che puoi chiedere a un server DNS, che cosa è 771 00:36:43,550 --> 00:36:46,460 l'indirizzo IP di google.com, facebook.com? 772 00:36:46,460 --> 00:36:48,250 >> E possiamo effettivamente fare questo. 773 00:36:48,250 --> 00:36:51,940 Uno strumento non abbiamo usato in precedenza è uno che è altrettanto accessibili, 774 00:36:51,940 --> 00:36:55,510 chiamato nslookup, per la ricerca il nome del server. 775 00:36:55,510 --> 00:36:57,410 E sto solo andando a digitare facebook.com. 776 00:36:57,410 --> 00:37:02,500 E vedo che IP di Facebook indirizzo a quanto pare è questo. 777 00:37:02,500 --> 00:37:05,520 Lasciami andare avanti e copiare che, andare a un browser, 778 00:37:05,520 --> 00:37:11,690 e andare a http: // e che indirizzo IP e premere Invio. 779 00:37:11,690 --> 00:37:14,140 E infatti, sembra funzionare. 780 00:37:14,140 --> 00:37:18,610 >> Ora lavora a ritroso, quello che era all'interno della busta virtual 781 00:37:18,610 --> 00:37:25,454 che Facebook ha risposto con cui Ho visitato che indirizzo IP direttamente? 782 00:37:25,454 --> 00:37:26,745 Perché preavviso, dove sono ora? 783 00:37:26,745 --> 00:37:29,250 784 00:37:29,250 --> 00:37:32,484 Dove sono ora, l'indirizzo? 785 00:37:32,484 --> 00:37:33,450 >> PUBBLICO: [INAUDIBLE] 786 00:37:33,450 --> 00:37:36,116 >> DAVID MALAN: Alla versione sicura, e al www.facebook.com. 787 00:37:36,116 --> 00:37:38,520 Quindi non è nemmeno solo l'indirizzo IP sicuro. 788 00:37:38,520 --> 00:37:42,650 Facebook ha preso su di sé per dire, questo è ridicolo. 789 00:37:42,650 --> 00:37:45,710 Non abbiamo intenzione di tenere voi in questo URL cercando brutto che è numerico. 790 00:37:45,710 --> 00:37:50,120 Stiamo per inviare un HTTP reindirizzare per mezzo di quella stessa intestazione 791 00:37:50,120 --> 00:37:53,010 che abbiamo visto before-- posizione del colon qualcosa. 792 00:37:53,010 --> 00:37:56,340 >> E quindi questo significa semplicemente che sotto il cofano è ancora questo indirizzo IP. 793 00:37:56,340 --> 00:37:59,010 Ogni computer su Internet ha un indirizzo IP, sembrerebbe. 794 00:37:59,010 --> 00:38:01,480 Ma non necessariamente esporre che all'utente. 795 00:38:01,480 --> 00:38:07,190 E proprio come back in the day, ci era 1-800-raccogliere, 1-800-C-O-L-L-E-C-T, 796 00:38:07,190 --> 00:38:11,700 negli Stati Uniti, era un modo di fare Collect chiamate tramite un telefono molto facilmente memorabile 797 00:38:11,700 --> 00:38:17,140 numero o 1-800-materasso per comprare un letto, e mnemonici simili che ancora di vedere 798 00:38:17,140 --> 00:38:20,460 al telefono tipo di specie di ancora, che le lettere mappa ai numeri. 799 00:38:20,460 --> 00:38:21,470 >> Ora, perché? 800 00:38:21,470 --> 00:38:26,080 Bene, è molto più facile da memorizzare 1-800-materasso o 1-800-COLLECT invece 801 00:38:26,080 --> 00:38:29,100 di 1-800 qualcosa qualcosa qualcosa qualcosa qualcosa qualcosa 802 00:38:29,100 --> 00:38:31,030 qualcosa, dove ogni di quelli che è una cifra. 803 00:38:31,030 --> 00:38:34,390 Allo stesso modo, il mondo ha imparato rapidamente che non dovremmo 804 00:38:34,390 --> 00:38:35,940 sono persone memorizzare indirizzi IP. 805 00:38:35,940 --> 00:38:36,826 Sarebbe sciocco. 806 00:38:36,826 --> 00:38:38,200 Abbiamo intenzione di usare i nomi, invece. 807 00:38:38,200 --> 00:38:40,420 Ed è per questo che DNS è nato. 808 00:38:40,420 --> 00:38:45,510 >> Va bene, quindi con che ha detto, in termini di bilanciamento del carico, proviamo yahoo.com. 809 00:38:45,510 --> 00:38:47,030 Beh, questo è interessante. 810 00:38:47,030 --> 00:38:51,464 Yahoo sembra essere il ritorno di tre indirizzi IP. 811 00:38:51,464 --> 00:38:53,940 Quindi dedurre da questo, se si potesse, che cosa è 812 00:38:53,940 --> 00:38:58,600 un altro modo che potremmo implementare questa nozione di bilanciamento del carico 813 00:38:58,600 --> 00:39:04,310 forse senza neanche usare un fisico dispositivo, questo nuovo dispositivo fisico? 814 00:39:04,310 --> 00:39:08,070 >> In altre parole, posso togliere il finanziamento che avete per il bilanciamento del carico 815 00:39:08,070 --> 00:39:10,990 e ti dirà di utilizzare alcune esistente pezzo di hardware per implementare 816 00:39:10,990 --> 00:39:12,680 questa nozione di bilanciamento del carico? 817 00:39:12,680 --> 00:39:18,870 818 00:39:18,870 --> 00:39:22,510 E lo spoiler è, Sì, ma che cosa, o come? 819 00:39:22,510 --> 00:39:27,605 Qual è Yahoo forse ci fa qui? 820 00:39:27,605 --> 00:39:29,200 Kareem? 821 00:39:29,200 --> 00:39:30,635 OK, Chris? 822 00:39:30,635 --> 00:39:31,510 PUBBLICO: [INAUDIBLE] 823 00:39:31,510 --> 00:39:35,119 824 00:39:35,119 --> 00:39:36,910 DAVID MALAN: Sì, tutto tre di questi lavori. 825 00:39:36,910 --> 00:39:39,890 Così casualità, round robin, posizione-- si può solo 826 00:39:39,890 --> 00:39:44,160 sfruttare un pezzo esistente del puzzle di cui abbiamo parlato in precedenza del DNS 827 00:39:44,160 --> 00:39:49,580 Sistema e semplicemente dire, quando il primo utente del giorno richiede yahoo.com, 828 00:39:49,580 --> 00:39:52,970 dare loro il primo indirizzo IP, come quella che termina in 45 lassù. 829 00:39:52,970 --> 00:39:55,762 E la prossima volta che un utente richiede l'indirizzo IP del yahoo.com 830 00:39:55,762 --> 00:39:57,970 da qualche parte nel mondo, dare loro il secondo IP, 831 00:39:57,970 --> 00:39:59,920 poi il terzo IP, allora il primo IP, poi il secondo. 832 00:39:59,920 --> 00:40:01,850 O essere intelligenti su di esso e farlo graficamente. 833 00:40:01,850 --> 00:40:05,200 O farlo in modo casuale e non basta fare esso round robin in questo modo. 834 00:40:05,200 --> 00:40:07,580 >> E in questo caso, quindi non abbiamo nemmeno bisogno 835 00:40:07,580 --> 00:40:10,190 di introdurre questo nero box nella nostra immagine. 836 00:40:10,190 --> 00:40:11,690 Non abbiamo bisogno di un nuovo dispositivo. 837 00:40:11,690 --> 00:40:16,930 Stiamo semplicemente dicendo computer per andare ai server direttamente, 838 00:40:16,930 --> 00:40:18,680 efficace, ma non mediante il loro nome. 839 00:40:18,680 --> 00:40:20,054 Non hanno mai bisogno di sapere il nome. 840 00:40:20,054 --> 00:40:25,690 Stanno solo viene detto che yahoo.com mappe per uno qualsiasi di questi indirizzi IP. 841 00:40:25,690 --> 00:40:28,180 >> Quindi invia la stessa richiesta. 842 00:40:28,180 --> 00:40:30,100 Ma all'esterno di la busta, semplicemente 843 00:40:30,100 --> 00:40:32,740 mette l'IP di essere stata informata di. 844 00:40:32,740 --> 00:40:35,590 E in questo modo, anche, potrebbe carichiamo bilanciare le richieste 845 00:40:35,590 --> 00:40:39,330 semplicemente inviando la busta di un diverso uno dei propri server di Yahoo? 846 00:40:39,330 --> 00:40:42,390 >> E se continuiamo a scavare, vedremo probabilmente altre aziende con più. 847 00:40:42,390 --> 00:40:44,380 La CNN ha due esposto pubblicamente. 848 00:40:44,380 --> 00:40:49,610 Anche se in realtà se facciamo questo nuovo e again-- cnn.com-- si può vedere 849 00:40:49,610 --> 00:40:51,730 stanno cambiando ordine, in realtà. 850 00:40:51,730 --> 00:40:56,680 Allora, qual è il meccanismo CNN utilizzando, a quanto pare? 851 00:40:56,680 --> 00:40:57,440 >> PUBBLICO: Random. 852 00:40:57,440 --> 00:40:59,440 DAVID MALAN: Beh, potrebbe essere casuale, sebbene 853 00:40:59,440 --> 00:41:01,110 sembra essere il ciclismo avanti e indietro. 854 00:41:01,110 --> 00:41:04,380 Quindi è probabilmente round robin in cui sono solo passare l'ordine in modo 855 00:41:04,380 --> 00:41:05,880 che io probabilmente fare il primo. 856 00:41:05,880 --> 00:41:08,860 Il mio computer avrà la prima volta in volta. 857 00:41:08,860 --> 00:41:10,490 Ecco, questo è il bilanciamento del carico. 858 00:41:10,490 --> 00:41:18,450 E che ci permette, in ultima analisi, per mappare i dati, o della mappa richieste, 859 00:41:18,450 --> 00:41:21,240 tra più server. 860 00:41:21,240 --> 00:41:24,226 Quindi che tipo di ora esistono ancora problemi? 861 00:41:24,226 --> 00:41:26,350 Ci si sente come abbiamo appena davvero risolto un buon problema. 862 00:41:26,350 --> 00:41:28,740 Abbiamo ottenuto gli utenti a diversi server. 863 00:41:28,740 --> 00:41:31,420 Ma-- oh, e Chris, ha fatto hai una domanda, prima? 864 00:41:31,420 --> 00:41:34,378 >> PUBBLICO: [INAUDIBLE] 865 00:41:34,378 --> 00:41:43,670 866 00:41:43,670 --> 00:41:45,120 >> DAVID MALAN: dipende totalmente. 867 00:41:45,120 --> 00:41:47,042 Allora, cosa sta succedendo qui? 868 00:41:47,042 --> 00:41:48,250 E possiamo realmente vedere questo. 869 00:41:48,250 --> 00:41:51,649 Quindi proviamo Yahoo. 870 00:41:51,649 --> 00:41:52,940 A dire il vero, andiamo a Facebook. 871 00:41:52,940 --> 00:41:54,520 Perché sappiamo che si lavora. 872 00:41:54,520 --> 00:41:56,545 Quindi ho intenzione di copiare che l'indirizzo IP di nuovo. 873 00:41:56,545 --> 00:41:58,820 Ho intenzione di chiudere tutte queste schede. 874 00:41:58,820 --> 00:42:03,800 Ho intenzione di andare aperto che scheda di rete speciale qui. 875 00:42:03,800 --> 00:42:07,800 E ho intenzione di visitare solo http: //. 876 00:42:07,800 --> 00:42:10,694 E ora ho intenzione di premere Invio. 877 00:42:10,694 --> 00:42:11,860 E vediamo cosa è successo. 878 00:42:11,860 --> 00:42:20,662 >> Se guardo quella richiesta, avviso che my-- Facebook è un cattivo esempio. 879 00:42:20,662 --> 00:42:22,370 Perché hanno un tecnica super elegante 880 00:42:22,370 --> 00:42:25,960 che nasconde quel dettaglio da noi. 881 00:42:25,960 --> 00:42:30,690 Mi permetta di utilizzare Yahoo instead-- http: // che IP. 882 00:42:30,690 --> 00:42:36,030 Apriamo la nostra rete scheda, conserva log. 883 00:42:36,030 --> 00:42:37,945 E qui andiamo, entrare. 884 00:42:37,945 --> 00:42:40,669 885 00:42:40,669 --> 00:42:41,210 È divertente. 886 00:42:41,210 --> 00:42:44,480 OK, ecco la famosa 404 messaggio. 887 00:42:44,480 --> 00:42:48,500 Cosa c'è di divertente è che essi probabilmente non lo sarà mai indietro. 888 00:42:48,500 --> 00:42:51,430 Perché c'è probabilmente Non qualcosa di sbagliato in sé. 889 00:42:51,430 --> 00:42:54,050 Hanno appena deliberatamente ha deciso di non supportare 890 00:42:54,050 --> 00:42:56,250 la forma numerica del loro indirizzo. 891 00:42:56,250 --> 00:43:00,270 >> Quindi quello che stiamo realmente vedendo nel scheda di rete, se mi tiro questo qui, 892 00:43:00,270 --> 00:43:06,140 è, come ho detto, il famoso 404, dove se guardo le intestazioni di risposta, 893 00:43:06,140 --> 00:43:09,070 questo è quello che ho ottenuto qui-- 404 Not Found. 894 00:43:09,070 --> 00:43:11,360 Quindi proviamo un altro. 895 00:43:11,360 --> 00:43:13,180 Vediamo se CNN collabora con noi. 896 00:43:13,180 --> 00:43:19,440 Prendo uno degli indirizzi IP della CNN, deselezionare questa, http, dah, dah, dah, dah. 897 00:43:19,440 --> 00:43:21,620 Quindi, in risposta a Chris domanda, che uno funzionasse. 898 00:43:21,620 --> 00:43:24,140 899 00:43:24,140 --> 00:43:26,255 >> E andiamo a intestazioni di risposta. 900 00:43:26,255 --> 00:43:30,810 901 00:43:30,810 --> 00:43:33,640 In realtà no, va bene, io sono lottando per trovare un esempio di lavoro. 902 00:43:33,640 --> 00:43:38,270 Quindi, la CNN ha deciso, ci limiteremo a vi lasciamo a qualunque indirizzo effettivamente visita, 903 00:43:38,270 --> 00:43:40,359 le questioni di branding da parte. 904 00:43:40,359 --> 00:43:43,275 Ma ciò che non sarebbe successo, se abbiamo potuto vedere nel caso di Facebook, 905 00:43:43,275 --> 00:43:46,700 è ci sarebbe un 301 Moved Permanente, molto probabilmente, 906 00:43:46,700 --> 00:43:54,420 all'interno della quale è Località: https: //www.facebook.com. 907 00:43:54,420 --> 00:44:01,210 E le probabilità sono www.facebook.com è un alias per l'esatto stesso server che abbiamo appena 908 00:44:01,210 --> 00:44:01,710 è andato a. 909 00:44:01,710 --> 00:44:03,500 >> Quindi è un po 'controproducente. 910 00:44:03,500 --> 00:44:05,170 Stiamo letteralmente visitare il server. 911 00:44:05,170 --> 00:44:07,040 Il server viene poi ci dice, andare via. 912 00:44:07,040 --> 00:44:08,320 Vai a questo altro indirizzo. 913 00:44:08,320 --> 00:44:10,870 Ma siamo proprio così capita di essere tornare a quello stesso server. 914 00:44:10,870 --> 00:44:14,550 Ma presumibilmente ora rimanere su tale server senza questo avanti e indietro. 915 00:44:14,550 --> 00:44:18,600 Perché ora stiamo usando la chiamammo versione del sito, non il numerico. 916 00:44:18,600 --> 00:44:20,060 Buona domanda. 917 00:44:20,060 --> 00:44:23,690 >> OK, quindi se ora abbiamo assume-- hanno risolto il bilanciamento del carico. 918 00:44:23,690 --> 00:44:25,894 Ora abbiamo un meccanismo, che si tratti di via DNS, 919 00:44:25,894 --> 00:44:29,060 che si tratti di via questa scatola nera, se che sta utilizzando una di queste tecniche. 920 00:44:29,060 --> 00:44:33,810 Possiamo prendere richiesta di un utente e capire a quale server, 1, 2, o 3, 921 00:44:33,810 --> 00:44:35,420 per inviare lui o lei. 922 00:44:35,420 --> 00:44:39,180 >> Quello che comincia a rompere il nostro sito? 923 00:44:39,180 --> 00:44:41,160 In altre parole, abbiamo costruito un business che 924 00:44:41,160 --> 00:44:43,480 era in precedenza su un singolo server. 925 00:44:43,480 --> 00:44:46,870 Ora che il business è in esecuzione tra più server. 926 00:44:46,870 --> 00:44:51,770 Che tipo di ipotesi, che tipo di decisioni di progettazione, 927 00:44:51,770 --> 00:44:54,870 potrebbe ora essere la rottura? 928 00:44:54,870 --> 00:44:55,745 >> Questo è meno evidente. 929 00:44:55,745 --> 00:44:58,620 Ma vediamo se non possiamo mettere la nostra dito su alcuni dei problemi che abbiamo 930 00:44:58,620 --> 00:44:59,780 creato per noi stessi. 931 00:44:59,780 --> 00:45:02,750 Anche in questo caso, è una specie di come tenere lungo la perdita nel tubo. 932 00:45:02,750 --> 00:45:05,094 E ora un po 'di nuova emissione è spuntato qui. 933 00:45:05,094 --> 00:45:07,880 934 00:45:07,880 --> 00:45:11,380 >> PUBBLICO: [INAUDIBLE] 935 00:45:11,380 --> 00:45:16,574 936 00:45:16,574 --> 00:45:19,240 DAVID MALAN: OK, quindi dobbiamo continuare a crescere il nostro spazio sul disco rigido. 937 00:45:19,240 --> 00:45:20,450 Sto bene con che in questo momento. 938 00:45:20,450 --> 00:45:23,212 Perché credo di poter scala orizzontale. 939 00:45:23,212 --> 00:45:26,420 Come se sto correndo basso, mi limiterò a get quarto assistente, forse un quinto del server, 940 00:45:26,420 --> 00:45:30,820 e quindi aumentare la nostra capacità di un ulteriore 30% o 50% o roba del genere. 941 00:45:30,820 --> 00:45:32,759 Quindi sono d'accordo con questo, almeno per ora. 942 00:45:32,759 --> 00:45:33,634 PUBBLICO: [INAUDIBLE] 943 00:45:33,634 --> 00:45:37,314 944 00:45:37,314 --> 00:45:38,980 DAVID MALAN: Ok, questo è un buon punto. 945 00:45:38,980 --> 00:45:42,340 Quindi supponiamo che i server non sono identici. 946 00:45:42,340 --> 00:45:45,260 E il servizio clienti o l'e-mail equivalente 947 00:45:45,260 --> 00:45:48,690 sta ottenendo qualche messaggio da un utente dicendo, questo non sta funzionando bene. 948 00:45:48,690 --> 00:45:52,070 E 'molto possibile, a volte, che forse uno o più server 949 00:45:52,070 --> 00:45:55,000 agisce un po 'storto, ma non gli altri, che può certamente 950 00:45:55,000 --> 00:45:57,096 rendere più difficile per inseguire il problema. 951 00:45:57,096 --> 00:45:58,720 Potrebbe essere necessario guardare più posti. 952 00:45:58,720 --> 00:46:00,960 >> Questo è manifestazione di un altro tipo di bug, 953 00:46:00,960 --> 00:46:03,950 che è che probabilmente si dovrebbe hanno progettato l'infrastruttura in modo 954 00:46:03,950 --> 00:46:06,200 che tutto è realmente identici. 955 00:46:06,200 --> 00:46:10,390 Ma lo fa rivelare un nuovo problema che non avevamo prima. 956 00:46:10,390 --> 00:46:11,715 Cos'altro? 957 00:46:11,715 --> 00:46:12,590 PUBBLICO: [INAUDIBLE] 958 00:46:12,590 --> 00:46:16,390 959 00:46:16,390 --> 00:46:19,500 >> DAVID MALAN: Sì, c'è una maggiore complessità. 960 00:46:19,500 --> 00:46:20,792 Ci sono fisicamente più fili. 961 00:46:20,792 --> 00:46:21,750 C'è un altro dispositivo. 962 00:46:21,750 --> 00:46:26,310 In realtà, ho introdotto un fondamentale concept e un problema fondamentale qui 963 00:46:26,310 --> 00:46:28,300 noto come un singolo punto di fallimento, che, 964 00:46:28,300 --> 00:46:30,110 anche se non avete mai sentito la frase, si può probabilmente 965 00:46:30,110 --> 00:46:31,780 ora lavorare a ritroso e capirlo. 966 00:46:31,780 --> 00:46:35,560 Che cosa significa che ho una sola punto di errore nella mia architettura? 967 00:46:35,560 --> 00:46:39,694 E per l'architettura, ho solo significare la topologia di esso. 968 00:46:39,694 --> 00:46:40,610 >> PUBBLICO: [INAUDIBLE] 969 00:46:40,610 --> 00:46:42,901 >> DAVID MALAN: Sì, che cosa se il bilanciamento del carico va giù? 970 00:46:42,901 --> 00:46:46,290 Ho inserito questo uomo di mezza cui scopo nella vita è quello di risolvere un problema. 971 00:46:46,290 --> 00:46:47,740 Ma ho introdotto un nuovo problema. 972 00:46:47,740 --> 00:46:49,350 Una nuova perdita è sorta nel tubo. 973 00:46:49,350 --> 00:46:53,500 Perché ora se il bilanciamento del carico muore o si rompe o misfunctions, 974 00:46:53,500 --> 00:46:56,350 ora ho perso l'accesso ai tutti e tre dei miei assistenti. 975 00:46:56,350 --> 00:46:58,880 E prima, non l'ho fatto avere questo intermediario. 976 00:46:58,880 --> 00:47:03,020 E così questo è un problema nuovo, probabilmente. 977 00:47:03,020 --> 00:47:05,245 Torneremo a come potremmo rimediare. 978 00:47:05,245 --> 00:47:06,734 >> PUBBLICO: [INAUDIBLE] 979 00:47:06,734 --> 00:47:08,400 DAVID MALAN: Questo sarebbe un approccio. 980 00:47:08,400 --> 00:47:13,926 Già, e quindi questo sta per essere abbastanza il foro del ratto iniziamo a scendere. 981 00:47:13,926 --> 00:47:15,800 Ma torniamo a che in un attimo. 982 00:47:15,800 --> 00:47:17,299 Quali altri problemi abbiamo creato? 983 00:47:17,299 --> 00:47:25,540 984 00:47:25,540 --> 00:47:27,470 >> Così Dan accennato database prima. 985 00:47:27,470 --> 00:47:29,500 E anche se non sei troppo familiare tecnicamente, 986 00:47:29,500 --> 00:47:33,220 un database è solo un server in cui la modifica dei dati è in genere memorizzati, 987 00:47:33,220 --> 00:47:36,430 forse un ordine qualcuno ha posto, il profilo utente, il proprio nome, 988 00:47:36,430 --> 00:47:40,810 il tuo indirizzo e-mail, cose che potrebbero essere immessi o modificati nel corso del tempo. 989 00:47:40,810 --> 00:47:44,599 >> In precedenza, il mio database era in lo stesso server come il mio web server. 990 00:47:44,599 --> 00:47:46,390 Perché ho appena avuto uno account di web hosting. 991 00:47:46,390 --> 00:47:48,480 Tutto era tutto nello stesso posto. 992 00:47:48,480 --> 00:47:54,200 Dove devo mettere il mio database Ora, sul server 1, 2, o 3? 993 00:47:54,200 --> 00:47:55,100 >> PUBBLICO: 4. 994 00:47:55,100 --> 00:47:58,070 >> DAVID MALAN: 4, OK, tutto a destra, quindi andiamo lì. 995 00:47:58,070 --> 00:48:01,650 Quindi ho intenzione di mettere il mio database-- e andiamo 996 00:48:01,650 --> 00:48:06,520 avviare etichettare questi www, www, www. 997 00:48:06,520 --> 00:48:08,780 E ho intenzione di dire, questo è il numero quattro. 998 00:48:08,780 --> 00:48:11,270 E io dico db per il database. 999 00:48:11,270 --> 00:48:12,870 OK, mi piace questo. 1000 00:48:12,870 --> 00:48:17,021 Che linea dovrei presumibilmente essere disegno qui? 1001 00:48:17,021 --> 00:48:18,850 >> PUBBLICO: [INAUDIBLE] 1002 00:48:18,850 --> 00:48:22,740 >> DAVID MALAN: Sì, in modo che il codice, come vedremo domani, 1003 00:48:22,740 --> 00:48:24,900 presumibilmente è la stessa su tutti e tre i server. 1004 00:48:24,900 --> 00:48:28,374 Ma ora deve collegarsi non un database in esecuzione in locale, ma altrove. 1005 00:48:28,374 --> 00:48:29,040 E va bene. 1006 00:48:29,040 --> 00:48:31,623 Possiamo solo dare il database di un nome, come abbiamo, o un numero. 1007 00:48:31,623 --> 00:48:33,930 E che tutto funziona benissimo. 1008 00:48:33,930 --> 00:48:35,820 Ma che cosa abbiamo fatto? 1009 00:48:35,820 --> 00:48:40,640 Abbiamo scalato orizzontalmente avendo tre server invece di uno, che 1010 00:48:40,640 --> 00:48:41,140 è buono. 1011 00:48:41,140 --> 00:48:44,240 Perché ora siamo in grado di gestire tre volte tanto carico. 1012 00:48:44,240 --> 00:48:47,710 >> E meglio ancora, se uno o due di questi server va giù, 1013 00:48:47,710 --> 00:48:49,350 la mia azienda può continuare a funzionare. 1014 00:48:49,350 --> 00:48:53,960 Perché ho ancora uno, anche se sono tipo di zoppicando prestazioni-saggio. 1015 00:48:53,960 --> 00:49:01,020 Ma ciò che nuovo problema ho io introdotto spostando il database 1016 00:49:01,020 --> 00:49:04,350 a questo server separato invece che su 1, 2, e 3? 1017 00:49:04,350 --> 00:49:05,412 >> PUBBLICO: [INAUDIBLE] 1018 00:49:05,412 --> 00:49:08,120 DAVID MALAN: Sì, così ora ho un altro singolo punto di errore. 1019 00:49:08,120 --> 00:49:12,330 Se la mia base di dati muore, o ha bisogno di essere aggiornati, o qualsiasi altra cosa, ormai sicuro, 1020 00:49:12,330 --> 00:49:13,610 il mio sito è online. 1021 00:49:13,610 --> 00:49:16,270 E posso servire statica, contenuti immutabile. 1022 00:49:16,270 --> 00:49:21,210 Ma non posso consentire agli utenti di log-in o il cambiamento qualcosa o ordinare qualsiasi cosa, peggio ancora. 1023 00:49:21,210 --> 00:49:24,120 Perché se 4 non è in linea, poi 1, 2, e 3 1024 00:49:24,120 --> 00:49:27,710 davvero non si può comunicare con esso per definizione. 1025 00:49:27,710 --> 00:49:31,560 >> OK quindi sì, e quindi questo è il motivo per cui Sto esitando a disegnare questo. 1026 00:49:31,560 --> 00:49:32,690 Quindi torniamo a quello. 1027 00:49:32,690 --> 00:49:33,700 Non voglio dire di tenere ti spinge fuori. 1028 00:49:33,700 --> 00:49:36,030 Ma il quadro è molto rapidamente andando ottenere stressante. 1029 00:49:36,030 --> 00:49:38,620 Perché è necessario iniziare avere due di tutto. 1030 00:49:38,620 --> 00:49:41,850 Infatti, se hai mai visto la film Contact a pochi anni fa 1031 00:49:41,850 --> 00:49:45,310 con Jodie Foster-- no? 1032 00:49:45,310 --> 00:49:47,410 >> OK, così per due noi che hanno visto di contatto, 1033 00:49:47,410 --> 00:49:50,800 c'è un rapporto là dove essenzialmente comprato due di qualcosa 1034 00:49:50,800 --> 00:49:53,250 piuttosto che una, seppur al doppio del prezzo. 1035 00:49:53,250 --> 00:49:55,922 Così è stato una sorta di giocosa commentare nel film. 1036 00:49:55,922 --> 00:49:57,130 È un po 'legato a questo. 1037 00:49:57,130 --> 00:49:58,290 Potremmo assolutamente farlo. 1038 00:49:58,290 --> 00:50:00,123 E si è appena costo noi due volte più soldi. 1039 00:50:00,123 --> 00:50:01,300 Ma torneremo a questo. 1040 00:50:01,300 --> 00:50:02,400 >> Così abbiamo risolto questo. 1041 00:50:02,400 --> 00:50:03,108 Allora sai cosa? 1042 00:50:03,108 --> 00:50:04,450 Questo è come un pendio scivoloso. 1043 00:50:04,450 --> 00:50:07,033 Non voglio avere a che fare con disporre di un database duplicato. 1044 00:50:07,033 --> 00:50:08,037 E 'troppo denaro. 1045 00:50:08,037 --> 00:50:08,620 Sai cosa? 1046 00:50:08,620 --> 00:50:12,880 Io voglio avere il mio database proprio come nella versione uno 1047 00:50:12,880 --> 00:50:17,450 dove ogni server ha proprio database locale. 1048 00:50:17,450 --> 00:50:19,480 Così sto solo andando a disegnare db su ciascuno di essi. 1049 00:50:19,480 --> 00:50:22,240 >> Così ora ogni server web è identico nella misura 1050 00:50:22,240 --> 00:50:25,650 in quanto ha lo stesso codice, lo stesso Le attività statiche, stesse immagini e testo 1051 00:50:25,650 --> 00:50:26,720 e così via. 1052 00:50:26,720 --> 00:50:29,580 E ognuno ha una propria banca dati. 1053 00:50:29,580 --> 00:50:31,450 Ho sistemato il singolo punto del problema fallimento. 1054 00:50:31,450 --> 00:50:32,570 Ora ho un database. 1055 00:50:32,570 --> 00:50:36,210 Non importa quale due o uno di questi Le cose muoiono, c'è sempre uno a sinistra. 1056 00:50:36,210 --> 00:50:41,156 Ma ciò che nuovo problema ho creato che la soluzione di Dan evitato? 1057 00:50:41,156 --> 00:50:42,470 >> PUBBLICO: [INAUDIBLE] 1058 00:50:42,470 --> 00:50:44,386 >> DAVID MALAN: Sì, devono sincronizzare loro, giusto? 1059 00:50:44,386 --> 00:50:47,860 Perché sia ​​Ho bisogno di sincronizzare che sta andando where-- in altre parole, 1060 00:50:47,860 --> 00:50:50,570 se Alice visita il mio sito, e le capitò 1061 00:50:50,570 --> 00:50:55,070 per ottenere robined casuale o turno o qualsiasi altra cosa, al numero di server di uno, 1062 00:50:55,070 --> 00:50:58,770 da allora in poi devo sempre mandarla al server 1. 1063 00:50:58,770 --> 00:50:59,420 Perché? 1064 00:50:59,420 --> 00:51:01,540 Perché se io mando al server 2, sta andando 1065 00:51:01,540 --> 00:51:03,140 a guardare come lei non esiste lì. 1066 00:51:03,140 --> 00:51:04,450 >> Non ho intenzione di avere la sua storia ordine. 1067 00:51:04,450 --> 00:51:06,300 Non ho intenzione di avere il suo profilo lì. 1068 00:51:06,300 --> 00:51:09,360 E che si sente proprio come è invitante problemi. 1069 00:51:09,360 --> 00:51:11,400 E quando Bob visita, ho dovuto mandarlo sempre 1070 00:51:11,400 --> 00:51:14,800 allo stesso server, 2, o qualsiasi uno, e Charlie ad un terzo, 1071 00:51:14,800 --> 00:51:15,797 e costantemente. 1072 00:51:15,797 --> 00:51:17,130 Questo non è irragionevole, però. 1073 00:51:17,130 --> 00:51:19,270 Questo è chiamato partizionamento del database. 1074 00:51:19,270 --> 00:51:21,270 E in effetti questo era ciò che Facebook ha fatto nella fase iniziale. 1075 00:51:21,270 --> 00:51:24,020 >> Se avete seguito la storia di Facebook, è iniziato qui al campus 1076 00:51:24,020 --> 00:51:25,770 come www.thefacebook.com. 1077 00:51:25,770 --> 00:51:29,260 Poi si è evoluta una volta Mark ha iniziato diffusione in altre sedi 1078 00:51:29,260 --> 00:51:34,450 di essere harvard.thefacebook.com e mit.thefacebook.com, e probabilmente 1079 00:51:34,450 --> 00:51:37,027 bu.thefacebook.com, e simili. 1080 00:51:37,027 --> 00:51:38,860 E che è stato a causa nella fase iniziale, non credo 1081 00:51:38,860 --> 00:51:40,484 si potrebbe avere amici in tutto campus. 1082 00:51:40,484 --> 00:51:41,410 Ma va bene. 1083 00:51:41,410 --> 00:51:43,930 Perché chiunque da Harvard ma ho inviato a questo server. 1084 00:51:43,930 --> 00:51:45,744 Chiunque da BU ottenuto inviato a questo server. 1085 00:51:45,744 --> 00:51:47,910 Chiunque da MIT ha ottenuto inviato a questo server-- in teoria. 1086 00:51:47,910 --> 00:51:50,540 Io non so bene tutto il dettagli di implementazione sottostanti. 1087 00:51:50,540 --> 00:51:55,610 Ma presumibilmente partizionato persone da loro campus, dove la loro rete era. 1088 00:51:55,610 --> 00:51:58,772 >> Quindi, questo è un bene fino al punto dove avete bisogno di due server per Harvard, 1089 00:51:58,772 --> 00:51:59,980 o tre server per Harvard. 1090 00:51:59,980 --> 00:52:01,800 E poi che la semplicità tipo di rompe. 1091 00:52:01,800 --> 00:52:03,174 Ma questo è un approccio ragionevole. 1092 00:52:03,174 --> 00:52:04,950 Facciamo sempre inviare Alice nello stesso posto, 1093 00:52:04,950 --> 00:52:06,366 inviare sempre Bob nello stesso posto. 1094 00:52:06,366 --> 00:52:09,680 Ma cosa succede se Alice server va offline? 1095 00:52:09,680 --> 00:52:12,300 Bob e Charlie possono ancora acquistare cose e accedere al sito. 1096 00:52:12,300 --> 00:52:13,462 Ma Alice non può. 1097 00:52:13,462 --> 00:52:15,170 Quindi hai perso un terzo della base di utenti. 1098 00:52:15,170 --> 00:52:16,980 Forse è meglio che il 100%? 1099 00:52:16,980 --> 00:52:20,580 Ma forse sarebbe bello se potessimo ancora sostenere il 100% dei nostri utenti 1100 00:52:20,580 --> 00:52:23,470 anche quando un terzo della nostra server va offline. 1101 00:52:23,470 --> 00:52:24,760 >> Così abbiamo potuto sincronizzare cosa? 1102 00:52:24,760 --> 00:52:29,250 Non gli utenti, di per sé, ma la banca dati in tutti questi server. 1103 00:52:29,250 --> 00:52:33,350 Così ora abbiamo tipo di bisogno di qualche tipo di interconnessione 1104 00:52:33,350 --> 00:52:37,880 qui in modo che i server stessi può sync-- non irragionevole. 1105 00:52:37,880 --> 00:52:40,090 Ed infatti, esiste questa tecnologia. 1106 00:52:40,090 --> 00:52:45,550 Nel mondo dei database, non c'è la nozione di basi di dati master-slave, 1107 00:52:45,550 --> 00:52:48,240 o primaria-secondaria, dove tra le caratteristiche 1108 00:52:48,240 --> 00:52:51,050 non è solo per memorizzare i dati e rispondere con i dati, 1109 00:52:51,050 --> 00:52:53,375 ma anche solo per sempre la sincronizzazione con l'altro. 1110 00:52:53,375 --> 00:52:56,480 Così ogni volta che si scrive o si salva qualcosa a questo database, 1111 00:52:56,480 --> 00:53:00,040 immediatamente viene "replicato" agli altri database oltre. 1112 00:53:00,040 --> 00:53:02,870 >> E ogni volta che si legge da esso, non importa dove ti trovi. 1113 00:53:02,870 --> 00:53:05,170 Perché se in teoria hanno tutti sincronizzati, sei 1114 00:53:05,170 --> 00:53:07,710 andando ad ottenere la stessa vista dei dati. 1115 00:53:07,710 --> 00:53:10,800 Quindi, questo suona perfetto. 1116 00:53:10,800 --> 00:53:11,883 Ci deve essere una cattura. 1117 00:53:11,883 --> 00:53:15,200 1118 00:53:15,200 --> 00:53:18,990 Quale potrebbe essere la cattura? 1119 00:53:18,990 --> 00:53:21,790 >> PUBBLICO: [INAUDIBLE] 1120 00:53:21,790 --> 00:53:25,830 >> DAVID Malan: Sì, così per tre volte tanto roba potrebbe andare male. 1121 00:53:25,830 --> 00:53:26,930 Questa è una realtà. 1122 00:53:26,930 --> 00:53:28,480 Potrebbe essere tutti la stessa nello spirito. 1123 00:53:28,480 --> 00:53:30,404 Ma qualcuno deve configurare questi. 1124 00:53:30,404 --> 00:53:33,070 C'è una maggiore probabilità che qualcosa sta per andare storto. 1125 00:53:33,070 --> 00:53:38,130 Proprio combinatorio avete più roba soggetto a errori. 1126 00:53:38,130 --> 00:53:40,505 Che altro è un male potenzialmente? 1127 00:53:40,505 --> 00:53:41,380 PUBBLICO: [INAUDIBLE] 1128 00:53:41,380 --> 00:53:44,100 1129 00:53:44,100 --> 00:53:46,180 >> DAVID MALAN: Sì, così sincronizzazione può essere cattivo. 1130 00:53:46,180 --> 00:53:48,110 Anche se si potrebbe sapere da backup e tale, 1131 00:53:48,110 --> 00:53:50,520 se solo stanno facendo ciecamente i backup, cosa succede se qualcosa non 1132 00:53:50,520 --> 00:53:51,560 andare male in un database? 1133 00:53:51,560 --> 00:53:53,018 Si elimina qualcosa che non dovrebbe. 1134 00:53:53,018 --> 00:53:56,299 Hai subito replicata che problema ovunque. 1135 00:53:56,299 --> 00:53:58,840 Così Victoria era backup talking-- sarebbe una buona cosa qui. 1136 00:53:58,840 --> 00:54:00,549 E così ci arriveremo di nuovo a questo. 1137 00:54:00,549 --> 00:54:03,090 E per essere chiari, stiamo parlando non si tratta di backup qui per sé. 1138 00:54:03,090 --> 00:54:08,240 Stiamo parlando di vera replica o la sincronizzazione tra i server. 1139 00:54:08,240 --> 00:54:09,110 Sono tutti in diretta. 1140 00:54:09,110 --> 00:54:12,074 Non sono destinati a essere usato per i backup. 1141 00:54:12,074 --> 00:54:13,294 >> PUBBLICO: [INAUDIBLE] 1142 00:54:13,294 --> 00:54:14,335 DAVID MALAN: Che cos'è? 1143 00:54:14,335 --> 00:54:14,710 AUDIENCE: Higher-- 1144 00:54:14,710 --> 00:54:15,751 DAVID MALAN: costo più elevato. 1145 00:54:15,751 --> 00:54:20,180 Abbiamo triplicato il costo per sicuro, anche se almeno in termini 1146 00:54:20,180 --> 00:54:21,100 dell'hardware. 1147 00:54:21,100 --> 00:54:23,200 Perché un database è solo un pezzo di software. 1148 00:54:23,200 --> 00:54:25,189 E un server web è un pezzo di software. 1149 00:54:25,189 --> 00:54:27,980 E 'probabilmente gratis se stiamo usando qualsiasi numero di cose open source. 1150 00:54:27,980 --> 00:54:30,480 Ma se stiamo utilizzando qualcosa come Oracle, 1151 00:54:30,480 --> 00:54:36,574 stiamo pagando più soldi per Oracle licenze o Microsoft per l'accesso. 1152 00:54:36,574 --> 00:54:38,240 Ci deve essere qualche altro fermo qui. 1153 00:54:38,240 --> 00:54:39,240 Non può essere questo semplice. 1154 00:54:39,240 --> 00:54:42,990 1155 00:54:42,990 --> 00:54:47,300 >> Quindi, per il vostro punto, penso che sia stata Kareem, per la geografia earlier-- o no, 1156 00:54:47,300 --> 00:54:50,870 Romano, è stato, per geography-- supponiamo che stiamo essere intelligente su questo, 1157 00:54:50,870 --> 00:54:54,080 e stiamo mettendo uno dei nostri server, ea sua volta le nostre banche dati, negli Stati Uniti, 1158 00:54:54,080 --> 00:54:56,910 e un altro in Europa, un altro in Sud America, un altro in Africa, 1159 00:54:56,910 --> 00:55:00,290 un'altra in Asia, ovunque noi potrebbe volere in tutto il mondo. 1160 00:55:00,290 --> 00:55:04,220 Sappiamo già dalla nostra traccia percorsi che i punti A e 1161 00:55:04,220 --> 00:55:06,910 B, se sono più lontani, stanno andando a prendere più tempo. 1162 00:55:06,910 --> 00:55:10,312 >> E se alcuni di voi hanno usato strumenti, come Facebook o Twitter 1163 00:55:10,312 --> 00:55:13,520 o qualsiasi di questi siti in questi giorni che sono in continua evoluzione a causa di utente 1164 00:55:13,520 --> 00:55:16,880 dati creati, a volte se si colpire Ricarica o aprire la stessa pagina 1165 00:55:16,880 --> 00:55:20,270 in un altro browser, si vede diverse versioni, quasi. 1166 00:55:20,270 --> 00:55:22,875 Si potrebbe vedere lo stato di una persona aggiornare qui, ma non qui, 1167 00:55:22,875 --> 00:55:25,500 e poi si ricarica, e poi appare, e si ricarica di nuovo, 1168 00:55:25,500 --> 00:55:26,640 e scompare. 1169 00:55:26,640 --> 00:55:29,076 In altre parole, mantenere un occhio questo, almeno 1170 00:55:29,076 --> 00:55:30,950 se si sta utilizzando sociale rete, soprattutto. 1171 00:55:30,950 --> 00:55:33,320 >> Anche in questo caso, solo perché il dati sta cambiando così rapidamente, 1172 00:55:33,320 --> 00:55:35,710 a volte i server si ottiene fuori sincrono. 1173 00:55:35,710 --> 00:55:37,230 E forse è un super piccola finestra. 1174 00:55:37,230 --> 00:55:39,970 Ma 200 millisecondi, forse anche più di che-- è 1175 00:55:39,970 --> 00:55:43,415 andando a prendere un po 'diverso da zero importo di tempo per questi database per la sincronizzazione. 1176 00:55:43,415 --> 00:55:45,290 E non siamo solo parlando di una richiesta. 1177 00:55:45,290 --> 00:55:48,540 Se una società ha migliaia di utenti usando simultaneamente, 1178 00:55:48,540 --> 00:55:49,460 potrebbero tampone. 1179 00:55:49,460 --> 00:55:52,240 In altre parole, ci potrebbe essere una coda o di una linea di attesa 1180 00:55:52,240 --> 00:55:54,950 prima di tutti quelli del database query possono ottenere sincronizzato. 1181 00:55:54,950 --> 00:55:56,610 Quindi forse è in realtà un paio di secondi. 1182 00:55:56,610 --> 00:55:59,820 >> E in effetti questo è vero credo che anche a questo giorno con Facebook, per cui 1183 00:55:59,820 --> 00:56:02,010 quando si sincronizzano da East Coast alla West Coast, 1184 00:56:02,010 --> 00:56:06,026 ha un non banale ritardo di propagazione, per così dire, 1185 00:56:06,026 --> 00:56:07,650 che solo tipo di tollerare. 1186 00:56:07,650 --> 00:56:11,210 E quindi non è tanto un errore in quanto è una realtà 1187 00:56:11,210 --> 00:56:14,230 che gli utenti potrebbero non vedere i dati corretti per almeno 1188 00:56:14,230 --> 00:56:14,970 pochi secondi. 1189 00:56:14,970 --> 00:56:17,410 >> Vedo questo su Twitter un sacco in realtà dove a volte io 1190 00:56:17,410 --> 00:56:21,227 twittare in una finestra, aprire un altro a poi vedere per confermare che effettivamente 1191 00:56:21,227 --> 00:56:22,560 salì, e non è ancora arrivati. 1192 00:56:22,560 --> 00:56:25,340 E devo tipo di ricaricare, ricaricare, reload-- oh, è così. 1193 00:56:25,340 --> 00:56:27,150 E non è perché non è stato salvato. 1194 00:56:27,150 --> 00:56:29,850 Semplicemente non si è propagato ad altri server. 1195 00:56:29,850 --> 00:56:33,120 >> Quindi questo trade-off, too-- si ha realmente vuole esporsi al rischio 1196 00:56:33,120 --> 00:56:37,254 che se l'utente va al loro ordine la storia, non è ancora in realtà c'è? 1197 00:56:37,254 --> 00:56:38,420 Vedo questo su alcune banche. 1198 00:56:38,420 --> 00:56:42,100 Mi infastidisce sempre quando, bene, per esempio, si può solo andare come sei mesi fa 1199 00:56:42,100 --> 00:56:45,160 nei vostri estratti conto bancari in alcune banche, anche se in teoria dovrebbero 1200 00:56:45,160 --> 00:56:46,576 essere in grado di avere tutto online. 1201 00:56:46,576 --> 00:56:48,630 Hanno appena prendono roba in linea a volte. 1202 00:56:48,630 --> 00:56:51,430 A volte, too-- quale sito si tratta? 1203 00:56:51,430 --> 00:56:53,570 C'è tra-- oh, è GoDaddy, credo. 1204 00:56:53,570 --> 00:56:56,620 GoDaddy, al momento del check out l'acquisto di un nome di dominio o qualcosa, 1205 00:56:56,620 --> 00:56:58,630 faranno spesso ti danno un link al tuo ricevimento. 1206 00:56:58,630 --> 00:57:01,470 E se si fa clic su quel link a destra via, spesso non funziona. 1207 00:57:01,470 --> 00:57:03,290 Si dice solo, vicolo cieco, niente qui. 1208 00:57:03,290 --> 00:57:05,450 >> E questo è anche a causa di questi ritardi di propagazione. 1209 00:57:05,450 --> 00:57:08,290 Perché per qualsiasi motivo, si stanno prendendo un po 'di tempo 1210 00:57:08,290 --> 00:57:09,670 per generare in realtà che. 1211 00:57:09,670 --> 00:57:12,070 Quindi questo è un po 'come si vuole tirare i capelli a un certo punto. 1212 00:57:12,070 --> 00:57:14,486 Perché tutti si sta cercando di fare è risolvere un problema semplice. 1213 00:57:14,486 --> 00:57:16,590 E continuiamo a creare nuove problemi per noi stessi. 1214 00:57:16,590 --> 00:57:18,770 Così vediamo se ci può tipo di annullare questo. 1215 00:57:18,770 --> 00:57:22,730 >> Si scopre che la combinazione database su tutti i server web 1216 00:57:22,730 --> 00:57:25,090 non è davvero delle migliori pratiche. 1217 00:57:25,090 --> 00:57:27,950 In generale, ciò che un ingegnere avrebbe fatto, o sistemi di architetto, 1218 00:57:27,950 --> 00:57:30,340 sarebbe quello di avere diversi livelli di server. 1219 00:57:30,340 --> 00:57:33,160 E solo per amor di spazio, io attirare la loro banca dati qui. 1220 00:57:33,160 --> 00:57:38,060 >> Potremmo avere database e numero di server a quattro qui 1221 00:57:38,060 --> 00:57:42,430 che ha collegamenti con ciascuno di questi server qui. 1222 00:57:42,430 --> 00:57:45,400 Quindi questo potrebbe essere il nostro front fine di livello, come spesso si dice. 1223 00:57:45,400 --> 00:57:47,770 E questo sarebbe il nostro livello di back-end. 1224 00:57:47,770 --> 00:57:50,580 E questo significa solo che questi affrontano l'utente. 1225 00:57:50,580 --> 00:57:53,010 E i database non faccia l'utente. 1226 00:57:53,010 --> 00:57:55,480 Nessun utente può direttamente accedere al database. 1227 00:57:55,480 --> 00:57:59,280 >> Quindi cerchiamo di ora forse scendere il percorso proposto Victoria. 1228 00:57:59,280 --> 00:58:00,940 Questo è un singolo punto di errore. 1229 00:58:00,940 --> 00:58:02,290 Questo mi mette a disagio. 1230 00:58:02,290 --> 00:58:05,790 Allora, qual è forse il soluzione più ovvia? 1231 00:58:05,790 --> 00:58:06,665 PUBBLICO: [INAUDIBLE] 1232 00:58:06,665 --> 00:58:09,979 1233 00:58:09,979 --> 00:58:11,437 DAVID MALAN: Siamo spiacenti, dire ancora una volta che. 1234 00:58:11,437 --> 00:58:12,352 PUBBLICO: [INAUDIBLE] 1235 00:58:12,352 --> 00:58:13,810 DAVID MALAN: server non di produzione. 1236 00:58:13,810 --> 00:58:15,364 Cosa intendi? 1237 00:58:15,364 --> 00:58:17,120 >> PUBBLICO: [INAUDIBLE] 1238 00:58:17,120 --> 00:58:19,120 >> DAVID MALAN: Oh, OK, così i backup. 1239 00:58:19,120 --> 00:58:21,110 OK, così abbiamo potuto fare questo, certamente. 1240 00:58:21,110 --> 00:58:23,790 E in realtà questo è molto comunemente fatto. 1241 00:58:23,790 --> 00:58:26,470 Questo potrebbe essere il numero di database cinque. 1242 00:58:26,470 --> 00:58:28,510 Ma questo è solo collegato al numero quattro. 1243 00:58:28,510 --> 00:58:31,110 E si potrebbe chiamare un hot spare. 1244 00:58:31,110 --> 00:58:35,080 Questi due database possono essere configurati ad appena costantemente la sincronizzazione 1245 00:58:35,080 --> 00:58:35,850 l'un l'altro. 1246 00:58:35,850 --> 00:58:39,010 E così, se questa macchina muore, per qualunque sia stupido reason-- il disco rigido 1247 00:58:39,010 --> 00:58:42,100 muore, qualcuno inciampa sul spinale, alcuni software è difettoso 1248 00:58:42,100 --> 00:58:46,560 e il computer si blocca o crashes-- si potrebbe avere un essere umano letteralmente 1249 00:58:46,560 --> 00:58:51,090 scollegare questo dalla parete e invece collegare questa in. 1250 00:58:51,090 --> 00:58:56,340 E poi all'interno, diciamo, un pochi minuti, forse mezz'ora, 1251 00:58:56,340 --> 00:58:57,210 sei di nuovo online. 1252 00:58:57,210 --> 00:58:59,259 >> Non è grande, ma non è anche orribile. 1253 00:58:59,259 --> 00:59:01,800 E non ci si deve preoccupare su eventuali problemi di sincronizzazione. 1254 00:59:01,800 --> 00:59:03,080 Perché tutto è già lì. 1255 00:59:03,080 --> 00:59:05,000 Perché si ha un perfetto backup pronto ad andare. 1256 00:59:05,000 --> 00:59:07,100 >> Si potrebbe essere un po ' amatore di questo, 1257 00:59:07,100 --> 00:59:12,990 come alcune persone spesso fanno, dove si potrebbe avere il numero di database quattro qui, 1258 00:59:12,990 --> 00:59:17,480 numero di database cinque qui, che stanno parlando gli uni agli altri. 1259 00:59:17,480 --> 00:59:24,120 Ma è anche questo tipo di arrangement-- 1260 00:59:24,120 --> 00:59:27,440 e deliberatamente sembra disordinato, perché 1261 00:59:27,440 --> 00:59:30,220 è-- dove tutti i i server front-end può 1262 00:59:30,220 --> 00:59:32,870 parlare con tutti i server back-end. 1263 00:59:32,870 --> 00:59:38,130 E quindi se questo database non lo fa rispondere, questi server front-end hanno 1264 00:59:38,130 --> 00:59:40,212 per avere la programmazione codice in loro che dice, 1265 00:59:40,212 --> 00:59:42,170 se non si ottiene un collegamento a questo database, 1266 00:59:42,170 --> 00:59:45,830 il primario inizia immediatamente parlando al secondario. 1267 00:59:45,830 --> 00:59:48,310 >> Ma questo ora spinge la complessità al codice. 1268 00:59:48,310 --> 00:59:52,070 E ora gli sviluppatori, il software gli sviluppatori, devono sapere su questo. 1269 00:59:52,070 --> 00:59:56,454 E stai tipo di legare il codice che si sta scrivendo al back-end reale 1270 00:59:56,454 --> 00:59:58,370 dettagli di implementazione, il che rende più difficile, 1271 00:59:58,370 --> 01:00:00,670 soprattutto in una grande società o un sito web più grande, 1272 01:00:00,670 --> 01:00:05,020 dove non necessariamente vogliono i programmatori abbiano 1273 01:00:05,020 --> 01:00:10,890 di sapere come la banca dati Gli ingegneri stanno facendo il loro lavoro. 1274 01:00:10,890 --> 01:00:13,810 Si potrebbe voler mantenere quei ruoli sorta di funzionalmente distinti in modo 1275 01:00:13,810 --> 01:00:16,810 che c'è questo strato di astrazione tra i due. 1276 01:00:16,810 --> 01:00:17,940 >> Così come potremmo risolvere questo problema? 1277 01:00:17,940 --> 01:00:20,290 Bene, abbiamo tipo di risolto questo problema una volta prima. 1278 01:00:20,290 --> 01:00:25,680 Perché non mettiamo una delle queste cose qui, dove 1279 01:00:25,680 --> 01:00:30,947 si parla a sua volta, al numero di quattro e cinque, tutti i server Web front-end 1280 01:00:30,947 --> 01:00:33,780 parlare con questo intermediario, e il intermediario in percorsi trasformare i dati? 1281 01:00:33,780 --> 01:00:38,494 Infatti, ciò che potrebbe essere un buon nome per questa cosa? 1282 01:00:38,494 --> 01:00:39,704 >> PUBBLICO: [INAUDIBLE] 1283 01:00:39,704 --> 01:00:41,120 DAVID MALAN: OK, Database Manager. 1284 01:00:41,120 --> 01:00:48,030 Ma quello che potrebbe essere un termine che potremmo riutilizzare per questo dispositivo? 1285 01:00:48,030 --> 01:00:49,760 Stiamo bilanciamento. 1286 01:00:49,760 --> 01:00:52,480 Sì, così in realtà, sono non essere giusto qui. 1287 01:00:52,480 --> 01:00:56,760 Così un bilanciamento del carico implicherebbe che stiamo commutazione avanti e indietro qui, 1288 01:00:56,760 --> 01:00:58,836 che non ha bisogno di essere effettivamente il caso. 1289 01:00:58,836 --> 01:01:00,460 Quindi c'è un paio di modi che potremmo fare questo. 1290 01:01:00,460 --> 01:01:03,920 >> Se questo è infatti un bilanciamento del carico, la storia è esattamente la stessa di prima. 1291 01:01:03,920 --> 01:01:05,230 Alcune delle richieste vanno a 4. 1292 01:01:05,230 --> 01:01:06,150 Alcuni di loro vanno a 5. 1293 01:01:06,150 --> 01:01:06,710 E questo è un bene. 1294 01:01:06,710 --> 01:01:08,835 Perché ora siamo in grado di gestire il doppio flusso. 1295 01:01:08,835 --> 01:01:11,120 Ma questa connessione qui è super importante. 1296 01:01:11,120 --> 01:01:14,050 Devono rimanere costantemente sincronizzato e, si spera 1297 01:01:14,050 --> 01:01:17,670 non sono geograficamente troppo distanti in modo che la sincronizzazione è essenzialmente 1298 01:01:17,670 --> 01:01:18,520 istantaneo. 1299 01:01:18,520 --> 01:01:20,410 In caso contrario, si potrebbe avere un problema. 1300 01:01:20,410 --> 01:01:21,330 >> In modo che non è male. 1301 01:01:21,330 --> 01:01:25,132 Ma ancora una volta, abbiamo introdotto un nuovo problema. 1302 01:01:25,132 --> 01:01:26,590 Che problema ho appena ricreato? 1303 01:01:26,590 --> 01:01:30,000 1304 01:01:30,000 --> 01:01:31,020 single point of failure. 1305 01:01:31,020 --> 01:01:32,390 Quindi qual è la soluzione a questo? 1306 01:01:32,390 --> 01:01:39,270 Così come Victoria appassionato di spendere soldi, possiamo prendere questo ragazzo fuori e fare questo. 1307 01:01:39,270 --> 01:01:41,731 E sto solo andando a spostare qui abbastanza spazio. 1308 01:01:41,731 --> 01:01:43,230 E sta andando ad essere un po 'disordinato. 1309 01:01:43,230 --> 01:01:44,563 Ho intenzione di mantenere le linee di disegno. 1310 01:01:44,563 --> 01:01:47,080 Supponiamo che tutti quelle linee vanno in entrambe le cose? 1311 01:01:47,080 --> 01:01:52,670 >> Una tecnica molto comune qui sarebbe utilizzare una tecnica chiamata battito cardiaco 1312 01:01:52,670 --> 01:01:57,390 in cui ognuno di questi dispositivi, bilanciatori di carico sinistro e destro, 1313 01:01:57,390 --> 01:02:00,740 o qualsiasi altra cosa che vogliamo chiamarli, è in continua dicendo: Io sono vivo, 1314 01:02:00,740 --> 01:02:03,220 Io sono vivo, sono vivo, sono vivo. 1315 01:02:03,220 --> 01:02:05,910 Uno di loro per impostazione predefinita agisce come primario. 1316 01:02:05,910 --> 01:02:09,620 Quindi, tutto il traffico viene instradato attraverso quella a sinistra, per esempio, 1317 01:02:09,620 --> 01:02:11,260 Per impostazione predefinita, in modo arbitrario. 1318 01:02:11,260 --> 01:02:16,890 >> Ma non appena il ragazzo sulla destra non sentire dal ragazzo di sinistra più, 1319 01:02:16,890 --> 01:02:20,440 quello di destra è programmato automaticamente, per esempio, 1320 01:02:20,440 --> 01:02:24,110 prendere in consegna l'indirizzo IP da una a sinistra, 1321 01:02:24,110 --> 01:02:28,240 e quindi diventare il primario, e forse inviare una e-mail o un messaggio di testo 1322 01:02:28,240 --> 01:02:31,570 per gli esseri umani a dire, hey, il primario di sinistra non è in linea. 1323 01:02:31,570 --> 01:02:33,310 Diventerò primaria per ora. 1324 01:02:33,310 --> 01:02:35,760 Quindi, diventa vice presidente presidente, per così dire. 1325 01:02:35,760 --> 01:02:38,180 E qualcuno deve andare a salvare il presidente, se si vuole. 1326 01:02:38,180 --> 01:02:41,090 Perché ora abbiamo una temporanea single point of failure. 1327 01:02:41,090 --> 01:02:45,020 >> Così come complicato o stressante come questo potrebbe sembrare per cominciare ad essere, 1328 01:02:45,020 --> 01:02:46,990 questo è il modo per risolvere questi problemi. 1329 01:02:46,990 --> 01:02:48,190 Tu fai buttare soldi a lui. 1330 01:02:48,190 --> 01:02:49,370 Si butta hardware a questo. 1331 01:02:49,370 --> 01:02:52,170 Ma purtroppo si aggiungere complessità per esso. 1332 01:02:52,170 --> 01:02:56,450 Ma il risultato, in ultima analisi, è che si dispone di un molto di più, in teoria, 1333 01:02:56,450 --> 01:02:57,670 robusta architettura. 1334 01:02:57,670 --> 01:02:58,850 Non è ancora perfetto. 1335 01:02:58,850 --> 01:03:02,470 Perché anche quando noi potremmo have-- non hanno un singolo punto di errore. 1336 01:03:02,470 --> 01:03:05,240 Ora abbiamo punti doppi di fallimento. 1337 01:03:05,240 --> 01:03:07,630 Ma se due cose vanno male, che assolutamente potrebbe, 1338 01:03:07,630 --> 01:03:09,030 stiamo ancora andando a essere non in linea. 1339 01:03:09,030 --> 01:03:11,660 >> E così molto comune nel industria è descrivere 1340 01:03:11,660 --> 01:03:14,000 il vostro tempo in termini di nove. 1341 01:03:14,000 --> 01:03:18,610 E una specie di obiettivo a cui aspirare è 99,999% 1342 01:03:18,610 --> 01:03:21,580 del tempo il sito è on-line. 1343 01:03:21,580 --> 01:03:24,170 O meglio ancora, aggiungere un paio di nove a questo. 1344 01:03:24,170 --> 01:03:28,159 Sfortunatamente, questi nove sono molto costosi. 1345 01:03:28,159 --> 01:03:29,450 E cerchiamo di fare questo in realtà fuori. 1346 01:03:29,450 --> 01:03:35,510 Quindi, se ho aperto il mio grande calcolatore di nuovo, 365 giorni in un anno, 24 ore in un giorno, 1347 01:03:35,510 --> 01:03:44,780 60 minuti a un'ora, e 60 secondi in un minuto, 1348 01:03:44,780 --> 01:03:48,690 è così che quanti secondi ci sono in un anno, se ho fatto questo in modo corretto. 1349 01:03:48,690 --> 01:03:55,740 Quindi, se volte questo 0,99,999 mila, che è quanto tempo vogliamo aspirare. 1350 01:03:55,740 --> 01:04:00,600 Quindi questo significa che dobbiamo essere all'altezza questo numero di secondi durante l'anno. 1351 01:04:00,600 --> 01:04:03,920 Quindi, se ora mi sottraggo il valore originale, o meglio 1352 01:04:03,920 --> 01:04:07,480 questo nuovo valore dal first-- 316 secondi, 1353 01:04:07,480 --> 01:04:09,640 che naturalmente è di cinque minuti. 1354 01:04:09,640 --> 01:04:13,770 >> Quindi, se il vostro sito o la vostra azienda è sostenendo "cinque nove", per cui siete 1355 01:04:13,770 --> 01:04:17,050 fino 99,99% del tempo, che significa una migliore 1356 01:04:17,050 --> 01:04:23,470 sono stati abbastanza intelligente e veloce abbastanza e abbastanza a filo con le risorse 1357 01:04:23,470 --> 01:04:27,890 che i server sono solo offline cinque minuti fuori dell 'anno. 1358 01:04:27,890 --> 01:04:29,980 Si tratta di un costoso e cosa difficile a cui aspirare. 1359 01:04:29,980 --> 01:04:31,430 >> Quindi è un compromesso, anche. 1360 01:04:31,430 --> 01:04:35,866 99,999% del tempo è piuttosto maledettamente difficile e costoso. 1361 01:04:35,866 --> 01:04:38,740 Cinque minutes-- si riesce a malapena ottenere al server di sostituire fisicamente 1362 01:04:38,740 --> 01:04:40,040 qualcosa che è andato storto. 1363 01:04:40,040 --> 01:04:42,810 Ed è per questo che iniziamo cablaggio cose insieme più complicate 1364 01:04:42,810 --> 01:04:48,240 priori in modo che i computer può sorta di fissare essi stessi. 1365 01:04:48,240 --> 01:04:49,446 Sì. 1366 01:04:49,446 --> 01:04:52,344 >> PUBBLICO: [INAUDIBLE] 1367 01:04:52,344 --> 01:05:02,014 1368 01:05:02,014 --> 01:05:04,430 DAVID MALAN: il problema potrebbe essere in qualsiasi numero di posizioni. 1369 01:05:04,430 --> 01:05:05,090 E in fact-- 1370 01:05:05,090 --> 01:05:07,101 >> PUBBLICO: [INAUDIBLE] 1371 01:05:07,101 --> 01:05:08,600 DAVID MALAN: Assolutamente, assolutamente. 1372 01:05:08,600 --> 01:05:10,720 E come l'immagine è Sempre più complesso, 1373 01:05:10,720 --> 01:05:12,110 Potrebbe essere il server web. 1374 01:05:12,110 --> 01:05:14,690 Potrebbe essere il potere all'edificio. 1375 01:05:14,690 --> 01:05:17,900 Potrebbe essere qualcosa di fisico, come i cavi GOT sfilacciate o cacciato fuori. 1376 01:05:17,900 --> 01:05:19,879 Potrebbe essere database non risponde. 1377 01:05:19,879 --> 01:05:22,920 Potrebbe essere che ha aggiornato il loro funzionamento sistema e qualcosa è appeso. 1378 01:05:22,920 --> 01:05:24,634 Così ci sono tante altre parti in movimento. 1379 01:05:24,634 --> 01:05:27,050 E così un sacco di ingegneria che deve andare dietro questo 1380 01:05:27,050 --> 01:05:30,431 è in realtà solo il commercio off, come come molto tempo, quanti soldi è in realtà 1381 01:05:30,431 --> 01:05:32,930 vale la pena, e quali sono le minacce sei davvero preoccupato? 1382 01:05:32,930 --> 01:05:35,471 Ad esempio, nel corsi che insegno ad Harvard, 1383 01:05:35,471 --> 01:05:38,470 usiamo un sacco di cloud computing, che inizieremo dare un'occhiata a ora, 1384 01:05:38,470 --> 01:05:41,107 infatti, dove si usa Amazon Web Services. 1385 01:05:41,107 --> 01:05:42,940 Proprio perché questa è la quella che abbiamo iniziato con. 1386 01:05:42,940 --> 01:05:45,856 Ma c'è sempre più in questi giorni da parte di Google e Microsoft e altri. 1387 01:05:45,856 --> 01:05:50,030 E abbiamo consapevolmente scelto di mettere tutti di macchine virtuali dei nostri corsi ", 1388 01:05:50,030 --> 01:05:55,400 come si chiamano, nel credo si tratta di dati di Western Center Virginia. 1389 01:05:55,400 --> 01:05:57,560 La maggior parte dei nostri studenti capita di essere dagli Stati Uniti, 1390 01:05:57,560 --> 01:05:59,820 anche se ci sono certamente un po 'a livello internazionale. 1391 01:05:59,820 --> 01:06:02,630 >> Ma la realtà è che è solo più semplice ed è più economico per noi 1392 01:06:02,630 --> 01:06:05,540 di mettere tutte le nostre uova nel cestino Virginia, 1393 01:06:05,540 --> 01:06:08,050 anche se so se qualcosa va male in Virginia, 1394 01:06:08,050 --> 01:06:12,760 come ha happened-- di tanto in tanto come se c'è un uragano o un po 'di tempo 1395 01:06:12,760 --> 01:06:15,890 evento come quello, se c'è qualche problema rete elettrica o la like-- tutto 1396 01:06:15,890 --> 01:06:20,240 dei dati dei nostri corsi 'potrebbero andare offline per un determinato numero di minuti o ore 1397 01:06:20,240 --> 01:06:21,600 o anche di più. 1398 01:06:21,600 --> 01:06:24,020 >> Ma la quantità di complessità che sarebbero necessari, 1399 01:06:24,020 --> 01:06:26,895 e la quantità di denaro che sarebbe essere necessario, per operare tutto 1400 01:06:26,895 --> 01:06:31,420 in parallelo in Europa o in California semplicemente non ha tanto senso. 1401 01:06:31,420 --> 01:06:35,080 Quindi è un commercio razionale off, ma dolorosa 1402 01:06:35,080 --> 01:06:37,740 quando si è in realtà avere quella tempi di inattività. 1403 01:06:37,740 --> 01:06:41,830 >> Ebbene, la transizione andiamo a destra ora a alcune delle soluzioni cloud-based 1404 01:06:41,830 --> 01:06:43,320 ad alcuni di questi problemi. 1405 01:06:43,320 --> 01:06:45,040 Tutto ciò che siamo stati discutendo finora 1406 01:06:45,040 --> 01:06:47,527 è una specie di problemi che hanno stato con noi per qualche tempo, 1407 01:06:47,527 --> 01:06:49,610 se avete il vostro server della società, 1408 01:06:49,610 --> 01:06:52,740 se si va a un co-location posto come un centro di dati e condividere 1409 01:06:52,740 --> 01:06:55,110 spazio con qualcun altro, o al giorno d'oggi nel cloud. 1410 01:06:55,110 --> 01:06:57,040 >> E che cosa c'è di bello la nube è che tutti 1411 01:06:57,040 --> 01:06:59,540 di queste cose che mi disegno come oggetti fisici 1412 01:06:59,540 --> 01:07:02,400 possono ora essere pensato come sorta di oggetti virtuali 1413 01:07:02,400 --> 01:07:04,659 nella nube che sono simulato con il software. 1414 01:07:04,659 --> 01:07:07,700 In altre parole, il computer di oggi, i server di oggi, come l'immagine di Dell 1415 01:07:07,700 --> 01:07:11,720 Ho mostrato in precedenza, sono così in fretta, hanno tanto RAM, tanto CPU, tanto su disco 1416 01:07:11,720 --> 01:07:16,140 spazio, che le persone hanno scritto software di partizione virtualmente 1417 01:07:16,140 --> 01:07:21,130 un server su nel illusione di essa essendo due server, o 200 server, in modo da 1418 01:07:21,130 --> 01:07:24,150 che ognuno di noi clienti ha l'illusione di avere 1419 01:07:24,150 --> 01:07:29,110 non solo un account su alcuni web Ospitiamo, ma la nostra macchina che siamo 1420 01:07:29,110 --> 01:07:30,490 affitto da qualcun altro. 1421 01:07:30,490 --> 01:07:34,140 >> Ma si tratta di una macchina virtuale in per quanto su un server Dell, 1422 01:07:34,140 --> 01:07:39,160 di nuovo potrebbe essere partizionato fino in due o 200 o più macchine virtuali, 1423 01:07:39,160 --> 01:07:43,770 ognuno dei quali dare a qualcuno amministrativo accesso, ma in un modo in cui nessuno di noi 1424 01:07:43,770 --> 01:07:48,040 sa o può accedere ad altri virtuale macchine sullo stesso hardware. 1425 01:07:48,040 --> 01:07:53,430 Quindi, per dipingere un quadro di diapositive di oggi, Ho questo girato qui da un sito web 1426 01:07:53,430 --> 01:07:54,160 chiamato Docker. 1427 01:07:54,160 --> 01:07:56,970 >> Quindi questo è un po 'più dettaglio di quanto abbiamo effettivamente bisogno. 1428 01:07:56,970 --> 01:07:59,830 Ma se si visualizza questo come la tua infrastructure-- 1429 01:07:59,830 --> 01:08:02,910 così appena l'hardware proprio, i server, gli scaffali, i dati 1430 01:08:02,910 --> 01:08:06,480 il centro, e tutti che-- si farebbe tipicamente eseguire un sistema operativo host. 1431 01:08:06,480 --> 01:08:08,275 Quindi qualcosa like-- potrebbe essere Windows. 1432 01:08:08,275 --> 01:08:09,430 Non sarebbe Mac OS. 1433 01:08:09,430 --> 01:08:11,430 Perché questo non è proprio impresa in questi giorni. 1434 01:08:11,430 --> 01:08:15,670 Quindi sarebbe Linux o Solaris o Unix o BSD o FreeBSD 1435 01:08:15,670 --> 01:08:19,779 o qualsiasi numero di altri sistemi operativi che sono liberi o commerciale. 1436 01:08:19,779 --> 01:08:22,120 >> E poi si esegue un programma, programma speciale, 1437 01:08:22,120 --> 01:08:26,479 chiamato un hypervisor, o Virtual Machine Monitor, VMM. 1438 01:08:26,479 --> 01:08:31,649 E questi sono i prodotti, se siete familiare, come VMware o VirtualBox 1439 01:08:31,649 --> 01:08:34,080 o Virtual PC o di altri. 1440 01:08:34,080 --> 01:08:38,430 E che questi programmi fanno è esattamente questa caratteristica ho descritto in precedenza. 1441 01:08:38,430 --> 01:08:41,779 Si crea l'illusione che una macchina fisica 1442 01:08:41,779 --> 01:08:44,550 può essere più macchine virtuali. 1443 01:08:44,550 --> 01:08:48,260 >> E così questi scatole colorate sulla parte superiore è dipingere un quadro di quanto segue. 1444 01:08:48,260 --> 01:08:50,260 Questo hypervisor, questo pezzo di software, lo chiamano 1445 01:08:50,260 --> 01:08:54,090 VMware, in esecuzione su un altro sistema operativo, lo chiamano Linux, 1446 01:08:54,090 --> 01:08:56,910 sta creando l'illusione che questo computer fisico è in realtà 1447 01:08:56,910 --> 01:09:00,149 uno, due, tre computer virtuali. 1448 01:09:00,149 --> 01:09:04,270 Così ora ho comprato, come il proprietario di questo hardware, un computer fisico. 1449 01:09:04,270 --> 01:09:06,200 E ora sto affittando a tre clienti. 1450 01:09:06,200 --> 01:09:09,731 >> E quei tre clienti in tutto pensano hanno una macchina virtuale dedicata. 1451 01:09:09,731 --> 01:09:10,939 E non è specchietto per le allodole. 1452 01:09:10,939 --> 01:09:13,750 E 'più che rivelazione si sta utilizzando una macchina virtuale. 1453 01:09:13,750 --> 01:09:17,589 Ma tecnologicamente, tutti noi avere il pieno controllo amministrativo 1454 01:09:17,589 --> 01:09:19,880 su ciascuno di quelli ospite sistemi operativi, che potrebbe 1455 01:09:19,880 --> 01:09:21,370 essere un qualsiasi numero di sistemi operativi. 1456 01:09:21,370 --> 01:09:23,029 >> Posso installare tutto quello che voglio. 1457 01:09:23,029 --> 01:09:24,640 Posso aggiornarlo come voglio. 1458 01:09:24,640 --> 01:09:27,470 E non hanno nemmeno bisogno di sapere o preoccupano l'altra operativa 1459 01:09:27,470 --> 01:09:29,678 sistemi su quel computer, le altre macchine virtuali, 1460 01:09:29,678 --> 01:09:35,290 meno che il proprietario di tutto questo grigio roba è essere un po 'avido 1461 01:09:35,290 --> 01:09:37,540 ed è overselling le sue risorse. 1462 01:09:37,540 --> 01:09:40,800 >> Quindi, se si sta prendendo una macchina fisica e la vendita 1463 01:09:40,800 --> 01:09:44,399 di non 200 ma 400 clienti, a un certo punto 1464 01:09:44,399 --> 01:09:47,270 stiamo andando a inciampare in quelle stessi problemi di prestazioni come prima. 1465 01:09:47,270 --> 01:09:50,460 Perché hai solo una limitata quantità di disco e RAM e così via. 1466 01:09:50,460 --> 01:09:53,450 E una macchina virtuale è solo un programma che è 1467 01:09:53,450 --> 01:09:56,140 fingendo di essere un completa del computer a tutti gli effetti. 1468 01:09:56,140 --> 01:09:58,040 Così si ottiene quello che si paga qui. 1469 01:09:58,040 --> 01:10:02,150 >> Quindi troverete on-line si potrebbe pagare un società rispettabile forse $ 100 al mese 1470 01:10:02,150 --> 01:10:05,660 per la propria macchina virtuale, o il proprio server virtuale privato, 1471 01:10:05,660 --> 01:10:07,090 che è un altro termine per esso. 1472 01:10:07,090 --> 01:10:10,400 Oppure si potrebbe trovare un po 'fly-by notte dove si paga $ 5,99 al mese 1473 01:10:10,400 --> 01:10:12,080 per la propria macchina virtuale. 1474 01:10:12,080 --> 01:10:15,614 Ma le probabilità sono non si ha quasi tanto le prestazioni a vostra disposizione, 1475 01:10:15,614 --> 01:10:18,530 perché sono stati overselling esso così, quanto si farebbe con il più alto 1476 01:10:18,530 --> 01:10:22,340 livello del servizio o, meglio venditore. 1477 01:10:22,340 --> 01:10:24,590 >> Che cosa significa questo in realtà significa per noi? 1478 01:10:24,590 --> 01:10:26,110 Quindi, lasciami andare a questo. 1479 01:10:26,110 --> 01:10:29,580 Ho intenzione di andare a aws.amazon.com. 1480 01:10:29,580 --> 01:10:31,590 Proprio perché non hanno un bel menu di opzioni. 1481 01:10:31,590 --> 01:10:34,700 Ma queste stesse lezioni applicano a un tutta una serie di altri fornitori di cloud. 1482 01:10:34,700 --> 01:10:38,201 Purtroppo, è spesso più commercializzazione parlare di qualsiasi altra cosa. 1483 01:10:38,201 --> 01:10:39,200 E questo continua a cambiare. 1484 01:10:39,200 --> 01:10:41,820 Così si va in un sito come questo. 1485 01:10:41,820 --> 01:10:44,560 E questo non fa davvero dirvi molto di qualche cosa. 1486 01:10:44,560 --> 01:10:47,780 >> E anche io, come guardo questo, non lo faccio davvero sapere cosa qualsiasi di queste cose 1487 01:10:47,780 --> 01:10:49,334 necessariamente fare fino mi tuffo in. 1488 01:10:49,334 --> 01:10:50,875 Ma cominciamo a sinistra, Compute. 1489 01:10:50,875 --> 01:10:52,980 E ho intenzione di fare clic su questo. 1490 01:10:52,980 --> 01:10:56,960 E ora Amazon ha francamente un numero enorme di servizi 1491 01:10:56,960 --> 01:10:57,960 questi giorni. 1492 01:10:57,960 --> 01:11:01,040 Ma Amazon EC2 è forse la più semplice. 1493 01:11:01,040 --> 01:11:05,840 >> Amazon EC2 creerà per noi esattamente il quadro abbiamo visto un momento fa. 1494 01:11:05,840 --> 01:11:10,240 E 'come fanno un sacco di i loro soldi nel cloud. 1495 01:11:10,240 --> 01:11:12,910 A quanto pare Netflix e altri sono nel cloud con loro. 1496 01:11:12,910 --> 01:11:16,260 Questo è tutto tipicamente soffice parlare di marketing. 1497 01:11:16,260 --> 01:11:19,720 Quindi quello che voglio fare è andare a Pricing-- o meglio, andiamo a istanze 1498 01:11:19,720 --> 01:11:23,790 prima solo a dipingere un quadro di questo. 1499 01:11:23,790 --> 01:11:25,800 >> Quindi questo può variare a seconda del fornitore. 1500 01:11:25,800 --> 01:11:29,590 E non abbiamo bisogno di ottenere troppo in profondità nel le erbacce qui di come questo tutte le opere. 1501 01:11:29,590 --> 01:11:34,720 Ma il modo Amazon, per esempio, si affitta una macchina virtuale o un server 1502 01:11:34,720 --> 01:11:37,200 in the cloud è hanno ottenuto questo genere di nomi divertenti, 1503 01:11:37,200 --> 01:11:41,000 come t2.nano, che significa piccolo, o t2.large, che significa grande. 1504 01:11:41,000 --> 01:11:43,970 Ognuno di loro ti dà neanche uno o due CPU virtuali. 1505 01:11:43,970 --> 01:11:45,470 >> Perché è una CPU virtuale? 1506 01:11:45,470 --> 01:11:49,440 Ebbene, la macchina fisica potrebbero hanno 64 o più CPU attuali. 1507 01:11:49,440 --> 01:11:52,125 Ma ancora una volta, attraverso il software, creano l'illusione 1508 01:11:52,125 --> 01:11:55,410 che quello macchina può essere divvied fino a più utenti. 1509 01:11:55,410 --> 01:11:58,765 Così possiamo pensare a questo come avente una CPU Intel o due. 1510 01:11:58,765 --> 01:12:01,290 crediti CPU per ogni hour-- vorrei hanno di leggere la stampa fine 1511 01:12:01,290 --> 01:12:02,581 da ciò che questo significa in realtà. 1512 01:12:02,581 --> 01:12:05,850 Significa quanta della macchina è possibile utilizzare per ora vis-a-vis 1513 01:12:05,850 --> 01:12:07,730 altri clienti su quella hardware. 1514 01:12:07,730 --> 01:12:11,560 >> Ecco la quantità di RAM o la memoria get-- sia un mezzo gigabyte, o 500 1515 01:12:11,560 --> 01:12:14,120 megabyte o 1 gigabyte o 2. 1516 01:12:14,120 --> 01:12:17,390 E poi la memorizzazione appena si riferisce a che tipo di dischi che ti danno. 1517 01:12:17,390 --> 01:12:19,950 C'è archiviazione diverso tecnologie che offrono. 1518 01:12:19,950 --> 01:12:22,870 Ma più interessante di questo allora potrebbe essere il prezzo. 1519 01:12:22,870 --> 01:12:25,860 >> Quindi, se siete il CTO o un ingegnere che non lo fa 1520 01:12:25,860 --> 01:12:28,420 desidera eseguire un server nella vostra ufficio, per qualsiasi motivo, 1521 01:12:28,420 --> 01:12:30,230 ed è troppo complicato o costoso 1522 01:12:30,230 --> 01:12:33,930 acquistare server e co-localizzare e pagare l'affitto in uno spazio fisico gabbia 1523 01:12:33,930 --> 01:12:36,670 somewhere-- si vuole solo sedersi al vostro computer portatile a tarda notte, 1524 01:12:36,670 --> 01:12:40,480 inserire i dati della carta di credito, e affittare i server del cloud-- pure, 1525 01:12:40,480 --> 01:12:41,920 possiamo farlo qui. 1526 01:12:41,920 --> 01:12:45,769 Ho intenzione di andare giù a-- Linux è un sistema operativo popolare. 1527 01:12:45,769 --> 01:12:47,310 E facciamo solo ottenere un senso delle cose. 1528 01:12:47,310 --> 01:12:48,990 Whoops-- troppo grande. 1529 01:12:48,990 --> 01:12:53,670 >> Quindi diamo un'occhiata a loro più piccolo macchina virtuale, che sembra avere, 1530 01:12:53,670 --> 01:12:57,440 per i nostri scopi, una CPU e 500 megabyte di RAM. 1531 01:12:57,440 --> 01:12:58,440 Questo è abbastanza piccola. 1532 01:12:58,440 --> 01:13:00,820 Ma, francamente, i server web non lo fanno bisogno di fare più di tanto. 1533 01:13:00,820 --> 01:13:02,630 È meglio avere le specifiche in un computer portatile. 1534 01:13:02,630 --> 01:13:04,990 Ma non avete bisogno di quelli spec in questi giorni per le cose. 1535 01:13:04,990 --> 01:13:11,490 Stai andando a pagare $ 0,0065 all'ora. 1536 01:13:11,490 --> 01:13:12,080 >> Quindi vediamo. 1537 01:13:12,080 --> 01:13:15,970 Se ci sono 24 ore in un giorno, e stiamo pagando questo molto per ora, 1538 01:13:15,970 --> 01:13:20,680 vi costerà $ 0,15 a noleggio che determinato server in the cloud. 1539 01:13:20,680 --> 01:13:22,210 E questo è solo per un giorno. 1540 01:13:22,210 --> 01:13:27,050 Se facciamo questo 365-- $ 57 a affittare quel server particolare. 1541 01:13:27,050 --> 01:13:28,420 Così suona super economico. 1542 01:13:28,420 --> 01:13:31,100 >> Questo è anche super basso rendimento. 1543 01:13:31,100 --> 01:13:37,169 Così abbiamo, per i corsi insegno qui, tende utilizzare Penso t2.smalls o t2.mediums. 1544 01:13:37,169 --> 01:13:39,960 E potremmo avere qualche centinaio gli utenti, poche migliaia di utenti, totale. 1545 01:13:39,960 --> 01:13:40,900 E 'piuttosto modesto. 1546 01:13:40,900 --> 01:13:42,360 Quindi vediamo cosa questo avrebbe un costo. 1547 01:13:42,360 --> 01:13:49,260 Quindi, se faccio questo volte costo 24 ore tempi 365, di questo 225 $. 1548 01:13:49,260 --> 01:13:51,160 E per i corsi Insegno, in genere 1549 01:13:51,160 --> 01:13:54,970 eseguire due di tutto, per ridondanza e anche per le prestazioni. 1550 01:13:54,970 --> 01:13:59,230 Così potremmo spendere, quindi, $ 500 per i server 1551 01:13:59,230 --> 01:14:00,860 che potremmo aver bisogno all'anno. 1552 01:14:00,860 --> 01:14:05,210 >> Ora, se avete bisogno di più performance-- diamo uno sguardo a memoria. 1553 01:14:05,210 --> 01:14:06,810 Abbiamo parlato di memoria un po '. 1554 01:14:06,810 --> 01:14:09,330 E se si ha bisogno di più memory-- e 64 gigabyte 1555 01:14:09,330 --> 01:14:12,310 è il numero ho continuato mentioning-- questo è quasi $ 1 all'ora. 1556 01:14:12,310 --> 01:14:16,180 E si può abbastanza rapidamente vedere questo goes-- così 24 ore tempi di 365. 1557 01:14:16,180 --> 01:14:20,580 Così ora è 8000 $ all'anno per un server abbastanza decente. 1558 01:14:20,580 --> 01:14:23,010 >> Così ad un certo punto, non c'è questo punto di flesso 1559 01:14:23,010 --> 01:14:29,510 dove ora abbiamo potuto spendere $ 6000 Probabilmente e comprare una macchina del genere 1560 01:14:29,510 --> 01:14:33,800 e di ammortizzare il costo sopra forse due, tre anni, la vita della macchina. 1561 01:14:33,800 --> 01:14:38,880 Ma ciò che potrebbe spingere in favorire o sfavore di affitto 1562 01:14:38,880 --> 01:14:41,230 una macchina in the cloud in questo modo? 1563 01:14:41,230 --> 01:14:44,110 Di nuovo, questo è paragonabile, probabilmente, a uno di quei server Dell 1564 01:14:44,110 --> 01:14:47,208 abbiamo visto descriveste un po 'fa. 1565 01:14:47,208 --> 01:14:51,016 >> PUBBLICO: [INAUDIBLE] 1566 01:14:51,016 --> 01:14:54,350 1567 01:14:54,350 --> 01:14:56,190 >> DAVID MALAN: Sì, questo è un enorme rialzo. 1568 01:14:56,190 --> 01:14:58,640 Perché non stiamo comprando la la macchina, non abbiamo di unboxing esso. 1569 01:14:58,640 --> 01:14:59,600 Non abbiamo a sollevarlo. 1570 01:14:59,600 --> 01:15:01,110 Non abbiamo per collegarlo alla nostra rack. 1571 01:15:01,110 --> 01:15:02,080 Non abbiamo per collegarlo. 1572 01:15:02,080 --> 01:15:03,140 Noi non dobbiamo pagare la bolletta elettrica. 1573 01:15:03,140 --> 01:15:05,120 >> Non abbiamo a girare l'aria condizionata. 1574 01:15:05,120 --> 01:15:07,620 Quando un disco rigido muore, non abbiamo guidare in nel mezzo della notte 1575 01:15:07,620 --> 01:15:08,172 per risolverlo. 1576 01:15:08,172 --> 01:15:09,630 Non abbiamo per impostare il monitoraggio. 1577 01:15:09,630 --> 01:15:13,750 Non abbiamo a-- l'elenco potrebbe continuare e su tutte le cose fisiche 1578 01:15:13,750 --> 01:15:15,810 non è necessario fare a causa della "nuvola". 1579 01:15:15,810 --> 01:15:18,620 >> E per essere chiari, cloud computing È questo termine molto abusato. 1580 01:15:18,620 --> 01:15:22,790 E 'davvero solo significa pagare qualcuno altro da eseguire server per voi, 1581 01:15:22,790 --> 01:15:25,300 o affittare spazio su server di qualcun altro. 1582 01:15:25,300 --> 01:15:27,110 Così il termine "cloud computing" è nuovo. 1583 01:15:27,110 --> 01:15:30,260 L'idea è vecchio di decenni. 1584 01:15:30,260 --> 01:15:32,070 Ecco, questo è piuttosto interessante. 1585 01:15:32,070 --> 01:15:33,960 >> E che cosa si può ottenere? 1586 01:15:33,960 --> 01:15:38,287 Beh, si ottiene anche la possibilità di fare tutto su un computer portatile a casa. 1587 01:15:38,287 --> 01:15:40,620 In altre parole, tutte le immagini Stavo solo drawing-- 1588 01:15:40,620 --> 01:15:44,010 e non era molto tempo fa che anche Mi è stato strisciare su un pavimento di server 1589 01:15:44,010 --> 01:15:46,680 collegare i cavi in ​​per ciascuna delle linee che si vede, 1590 01:15:46,680 --> 01:15:49,590 e l'aggiornamento del funzionamento sistemi e unità cambiando intorno. 1591 01:15:49,590 --> 01:15:51,610 C'è un sacco di fisicità a tutto questo. 1592 01:15:51,610 --> 01:15:55,300 >> Ma cosa c'è di bello virtuale macchine, come suggerisce il nome tipo di, 1593 01:15:55,300 --> 01:15:57,600 ora ci sono web-based interfacce in base alle quali 1594 01:15:57,600 --> 01:15:59,900 se si desidera che l'equivalente di una linea da questo server 1595 01:15:59,900 --> 01:16:03,959 ad un altro, basta digitare, tipo, tipo, fare clic e trascinare, fare clic su Invia, e voilà, 1596 01:16:03,959 --> 01:16:05,250 lo avete cablato virtualmente. 1597 01:16:05,250 --> 01:16:07,235 Perché è tutto fatto in software. 1598 01:16:07,235 --> 01:16:09,110 E la ragione è fatto nel software è di nuovo 1599 01:16:09,110 --> 01:16:12,650 perché abbiamo così tanto di RAM e così a nostra disposizione in questi giorni molto CPU, 1600 01:16:12,650 --> 01:16:14,880 anche se tutte quella roba richiede tempo, 1601 01:16:14,880 --> 01:16:18,450 è più lento di eseguire le cose in software che hardware, 1602 01:16:18,450 --> 01:16:23,710 così come è più lento di utilizzare un meccanico dispositivo come un disco rigido di RAM, 1603 01:16:23,710 --> 01:16:25,190 qualcosa di puramente elettronico. 1604 01:16:25,190 --> 01:16:27,490 Abbiamo così tante risorse a nostra disposizione. 1605 01:16:27,490 --> 01:16:29,920 Noi esseri umani sono una sorta di invariantly lento. 1606 01:16:29,920 --> 01:16:33,840 E così ora le macchine possono fare molto di più per unità di tempo. 1607 01:16:33,840 --> 01:16:36,640 Abbiamo queste abilità di fare le cose virtualmente. 1608 01:16:36,640 --> 01:16:39,120 >> E dirò per i corsi Insegno, per esempio, qui, 1609 01:16:39,120 --> 01:16:43,464 abbiamo circa una dozzina o forse così totale di macchine virtuali 1610 01:16:43,464 --> 01:16:45,880 come quella in esecuzione in un dato tempo facendo cose front-end, 1611 01:16:45,880 --> 01:16:47,620 facendo ritorno roba fine. 1612 01:16:47,620 --> 01:16:50,237 Abbiamo tutto il nostro storage. 1613 01:16:50,237 --> 01:16:52,820 Quindi, qualsiasi video, tra cui le cose come questo che stiamo girando, 1614 01:16:52,820 --> 01:16:54,330 si finisce per mettere in cloud. 1615 01:16:54,330 --> 01:16:58,710 Amazon ha servizi chiamati Amazon S3, il loro servizio di storage semplice, che 1616 01:16:58,710 --> 01:17:00,397 è proprio come lo spazio su disco in the cloud. 1617 01:17:00,397 --> 01:17:02,230 Hanno qualcosa Chiamato CloudFront, che 1618 01:17:02,230 --> 01:17:06,040 è un servizio di CDN, Content il servizio Delivery Network, che 1619 01:17:06,040 --> 01:17:10,190 significa che prendono tutti i file e per voi automagicamente replicare lo 1620 01:17:10,190 --> 01:17:11,290 Intorno al mondo. 1621 01:17:11,290 --> 01:17:12,780 >> In modo che non lo fanno preventivamente. 1622 01:17:12,780 --> 01:17:15,159 Ma la prima volta che qualcuno in India richiede il file, 1623 01:17:15,159 --> 01:17:16,700 faranno potenzialmente di cache localmente. 1624 01:17:16,700 --> 01:17:19,325 La prima volta in Cina, il prima volta in Brasile che accade, 1625 01:17:19,325 --> 01:17:20,880 inizieranno la memorizzazione nella cache localmente. 1626 01:17:20,880 --> 01:17:22,730 E non c'è bisogno di fare nulla di tutto ciò. 1627 01:17:22,730 --> 01:17:26,710 E così è così incredibilmente convincente in questi giorni per spostare le cose 1628 01:17:26,710 --> 01:17:27,890 nel cloud. 1629 01:17:27,890 --> 01:17:31,890 Perché si ha questa capacità letteralmente di non avere gli esseri umani fare quasi tanto 1630 01:17:31,890 --> 01:17:32,390 lavoro. 1631 01:17:32,390 --> 01:17:35,930 E letteralmente non è necessario come molti gli esseri umani a fare questi lavori anymore-- 1632 01:17:35,930 --> 01:17:38,450 "ops", o ruoli operativi, non più. 1633 01:17:38,450 --> 01:17:43,150 È davvero solo bisogno gli sviluppatori e un minor numero di ingegneri 1634 01:17:43,150 --> 01:17:44,840 che può semplicemente fare le cose virtualmente. 1635 01:17:44,840 --> 01:17:46,590 Infatti, proprio per dare un senso di questo, 1636 01:17:46,590 --> 01:17:51,800 lasciami andare a prezzi per un altro prodotto qui. 1637 01:17:51,800 --> 01:17:58,170 Vediamo qualcosa di simile CDN S3. 1638 01:17:58,170 --> 01:18:01,140 Quindi questo è essenzialmente un hard disk virtuale in the cloud. 1639 01:18:01,140 --> 01:18:14,360 E se noi scorrere fino a pricing-- quindi è $ 0,007 per gigabyte. 1640 01:18:14,360 --> 01:18:16,300 E that's-- come facciamo questo? 1641 01:18:16,300 --> 01:18:17,410 Penso che sia al mese. 1642 01:18:17,410 --> 01:18:21,530 >> Quindi, se questo è per month-- o al giorno? 1643 01:18:21,530 --> 01:18:23,200 Dan, è presente al giorno? 1644 01:18:23,200 --> 01:18:24,700 Questo è al mese, OK. 1645 01:18:24,700 --> 01:18:28,280 Quindi, se questo è per month-- mi dispiace, è il $ 0,03 al mese. 1646 01:18:28,280 --> 01:18:29,820 C'è 12 mesi l'anno. 1647 01:18:29,820 --> 01:18:32,250 Quindi, la quantità di dati potrebbe si memorizza nel cloud? 1648 01:18:32,250 --> 01:18:37,410 Un gigabyte non è enorme, ma io non so, come 1 terabyte, 1649 01:18:37,410 --> 01:18:38,460 così come 1.000 di quelli. 1650 01:18:38,460 --> 01:18:39,501 Questo non è più di tanto. 1651 01:18:39,501 --> 01:18:44,382 È $ 368 memorizzare un terabyte dei dati nel cloud di Amazon. 1652 01:18:44,382 --> 01:18:46,090 Quindi, quali sono alcuni dei i compromessi, allora? 1653 01:18:46,090 --> 01:18:47,970 Non può essere tutti buoni. 1654 01:18:47,970 --> 01:18:52,260 Niente di cui abbiamo parlato oggi è sorta di senza una cattura o un costo. 1655 01:18:52,260 --> 01:18:55,269 Allora, cosa c'è di male in movimento tutto nel cloud? 1656 01:18:55,269 --> 01:18:56,060 PUBBLICO: Sicurezza. 1657 01:18:56,060 --> 01:18:57,721 DAVID MALAN: OK, che cosa vuoi dire? 1658 01:18:57,721 --> 01:18:58,596 PUBBLICO: [INAUDIBLE] 1659 01:18:58,596 --> 01:19:01,589 1660 01:19:01,589 --> 01:19:02,630 DAVID MALAN: Sì, giusto. 1661 01:19:02,630 --> 01:19:05,130 E non si vuole veramente alcuni ingegneri casuali 1662 01:19:05,130 --> 01:19:08,750 su Amazon che non avrai mai incontrare avendo l'accesso fisico ai quei computer, 1663 01:19:08,750 --> 01:19:11,010 e se veramente voluto, accesso virtuale? 1664 01:19:11,010 --> 01:19:15,070 E anche se in teoria software-- bene, 1665 01:19:15,070 --> 01:19:17,442 crittografia può assolutamente proteggere contro questo. 1666 01:19:17,442 --> 01:19:19,150 Quindi, se quello che stai immagazzinarli nel proprio server 1667 01:19:19,150 --> 01:19:21,470 è stato criptato meno di una preoccupazione. 1668 01:19:21,470 --> 01:19:25,010 >> Ma appena un essere umano ha fisica accesso ad una macchina, crittografia a parte, 1669 01:19:25,010 --> 01:19:26,100 tutte le scommesse sono una sorta di fuori. 1670 01:19:26,100 --> 01:19:28,240 Si potrebbe sapere da ieri che i PC in particolare, 1671 01:19:28,240 --> 01:19:30,360 anche se tu avessi quelle cose chiamate "password del BIOS," 1672 01:19:30,360 --> 01:19:33,360 erano quando il desktop avviato up, si sarebbe richiesto con una password che 1673 01:19:33,360 --> 01:19:35,980 non ha nulla a che fare con Windows, è possibile in genere 1674 01:19:35,980 --> 01:19:39,750 basta aprire il telaio del macchina, trovare minuscoli piedini, 1675 01:19:39,750 --> 01:19:42,240 e utilizzare qualcosa chiamato un ponticello e basta collegare 1676 01:19:42,240 --> 01:19:45,690 questi due fili per circa un secondo, completando così un circuito. 1677 01:19:45,690 --> 01:19:47,360 E che eliminerebbe la password. 1678 01:19:47,360 --> 01:19:49,800 >> Quindi, quando si ha accesso fisico a un dispositivo, è possibile fare cose del genere. 1679 01:19:49,800 --> 01:19:51,110 È possibile rimuovere il disco rigido. 1680 01:19:51,110 --> 01:19:53,060 È possibile accedere a questo modo. 1681 01:19:53,060 --> 01:19:55,442 E quindi questo è il motivo per cui, in il caso di Dropbox, 1682 01:19:55,442 --> 01:19:57,900 per esempio, è un po ' preoccupante che non solo hanno 1683 01:19:57,900 --> 01:20:02,860 avere i dati, anche se è cifrato, hanno anche la chiave. 1684 01:20:02,860 --> 01:20:04,993 Altre preoccupazioni? 1685 01:20:04,993 --> 01:20:08,430 >> PUBBLICO: [INAUDIBLE] 1686 01:20:08,430 --> 01:20:27,740 1687 01:20:27,740 --> 01:20:30,240 DAVID MALAN: Sì, è molto true-- il Googles, le mele, 1688 01:20:30,240 --> 01:20:31,406 le Microsofts del mondo. 1689 01:20:31,406 --> 01:20:34,400 E infatti, da quanto tempo hai avuto il tuo iPhone per? 1690 01:20:34,400 --> 01:20:35,885 Sì, prendere o lasciare. 1691 01:20:35,885 --> 01:20:36,760 PUBBLICO: [INAUDIBLE] 1692 01:20:36,760 --> 01:20:37,780 DAVID MALAN: mi dispiace? 1693 01:20:37,780 --> 01:20:39,667 Sei tra coloro che ha un iPhone, giusto? 1694 01:20:39,667 --> 01:20:40,250 Pubblico: Sì. 1695 01:20:40,250 --> 01:20:42,208 DAVID MALAN: Quanto tempo hai avuto il tuo iPhone? 1696 01:20:42,208 --> 01:20:43,372 PUBBLICO: [INAUDIBLE] 1697 01:20:43,372 --> 01:20:45,080 DAVID MALAN: OK, così Apple sa letteralmente 1698 01:20:45,080 --> 01:20:49,030 dove sei stato ogni ora di il giorno per gli ultimi cinque anni. 1699 01:20:49,030 --> 01:20:51,112 >> PUBBLICO: [INAUDIBLE] 1700 01:20:51,112 --> 01:20:54,626 1701 01:20:54,626 --> 01:20:56,375 DAVID MALAN: Quale è una caratteristica meravigliosa. 1702 01:20:56,375 --> 01:20:57,860 PUBBLICO: [INAUDIBLE] 1703 01:20:57,860 --> 01:21:00,875 DAVID MALAN: Sì, ma trade off di sicuro. 1704 01:21:00,875 --> 01:21:01,750 PUBBLICO: [INAUDIBLE] 1705 01:21:01,750 --> 01:21:04,720 1706 01:21:04,720 --> 01:21:07,813 >> DAVID MALAN: Sì, è molto facile. 1707 01:21:07,813 --> 01:21:08,688 PUBBLICO: [INAUDIBLE] 1708 01:21:08,688 --> 01:21:12,040 1709 01:21:12,040 --> 01:21:13,248 DAVID MALAN: Altri aspetti negativi? 1710 01:21:13,248 --> 01:21:16,995 PUBBLICO: [INAUDIBLE] 1711 01:21:16,995 --> 01:21:26,151 1712 01:21:26,151 --> 01:21:27,900 DAVID MALAN: Absolutely-- tecnologicamente, 1713 01:21:27,900 --> 01:21:31,550 economicamente, è abbastanza convincente per sorta di guadagnare queste economie di scala 1714 01:21:31,550 --> 01:21:33,579 e spostare tutto in il cosiddetto cloud. 1715 01:21:33,579 --> 01:21:35,870 Ma probabilmente si vuole andare con alcuni dei più grandi 1716 01:21:35,870 --> 01:21:39,380 pesce, le Amazzoni, il Googles, la Microsofts-- Rackspace è abbastanza big-- 1717 01:21:39,380 --> 01:21:42,200 e altri pochi, e non necessariamente volare da gente di notte 1718 01:21:42,200 --> 01:21:45,640 per i quali è molto facile da fare questo tipo di tecnica oggi. 1719 01:21:45,640 --> 01:21:49,140 E questo è che si può pagare $ 5,99 al mese per. 1720 01:21:49,140 --> 01:21:50,890 Ma vi sarà certamente ottiene quello che si paga. 1721 01:21:50,890 --> 01:21:54,014 >> Quando si dice [INAUDIBLE], in quel momento cose come queste cinque nove venire, 1722 01:21:54,014 --> 01:21:58,017 per cui anche se tecnologicamente non possiamo garantire 99.999, 1723 01:21:58,017 --> 01:22:00,350 ci limiteremo a costruire in una sorta della pena al contratto 1724 01:22:00,350 --> 01:22:03,910 in modo che se ciò dovesse accadere, almeno c'è qualche costo per noi, il venditore. 1725 01:22:03,910 --> 01:22:07,950 E questo è quello che la normale procedura essere inducendole ad accettare di. 1726 01:22:07,950 --> 01:22:09,590 >> PUBBLICO: [INAUDIBLE] 1727 01:22:09,590 --> 01:22:12,290 >> DAVID MALAN: E il una sorta di benedizione 1728 01:22:12,290 --> 01:22:15,630 è che anche quando si scende, per esempio, o anche alcune società, 1729 01:22:15,630 --> 01:22:17,800 la realtà è Amazon, per esempio, ha tanti 1730 01:22:17,800 --> 01:22:21,780 clienti Maledizione, clienti ben noti, che operano fuori di alcuni centri dati 1731 01:22:21,780 --> 01:22:26,224 che quando qualcosa va veramente sbagliato, come cause di forza maggiore e di tempo e così, 1732 01:22:26,224 --> 01:22:29,390 se non c'è alcun tipo di rivestimento d'argento, è che sei in buona compagnia. 1733 01:22:29,390 --> 01:22:30,680 Il tuo sito web potrebbe essere non in linea. 1734 01:22:30,680 --> 01:22:32,750 Ma lo è anche come la metà di Internet popolare. 1735 01:22:32,750 --> 01:22:36,230 E quindi è senza dubbio un po ' più appetibile per i clienti 1736 01:22:36,230 --> 01:22:38,780 se si tratta di più di un internet cosa che una cosa acme.com. 1737 01:22:38,780 --> 01:22:41,780 Ma questo è un po 'di un imbroglio. 1738 01:22:41,780 --> 01:22:46,740 >> Quindi, in termini di altre cose da guardare, solo così che noi non escludiamo altri, 1739 01:22:46,740 --> 01:22:51,210 se si va a Microsoft Azure, che avere sia Linux e tutto il resto di Windows 1740 01:22:51,210 --> 01:22:53,190 che è paragonabile a Amazon. 1741 01:22:53,190 --> 01:22:57,540 Se si va a Google Compute Engine, hanno qualcosa di simile pure. 1742 01:22:57,540 --> 01:23:00,500 E proprio per completare queste offerte di cloud, 1743 01:23:00,500 --> 01:23:02,762 Farò menzione di un'altra cosa. 1744 01:23:02,762 --> 01:23:04,720 Si tratta di un popolare sito web questo è rappresentante 1745 01:23:04,720 --> 01:23:08,590 di una classe di tecnologie. 1746 01:23:08,590 --> 01:23:12,350 Quelli che abbiamo appena parlato A proposito, Amazon, sarebbe IAAS, 1747 01:23:12,350 --> 01:23:17,150 Infrastructure as a Service, in cui si tipo di hardware fisico come un servizio. 1748 01:23:17,150 --> 01:23:18,757 C'è SAAS. 1749 01:23:18,757 --> 01:23:20,090 A dire il vero, mi permetta di butto questi giù. 1750 01:23:20,090 --> 01:23:23,290 1751 01:23:23,290 --> 01:23:28,190 >> infrastrutture IAAS-- As A Service, SAAS, 1752 01:23:28,190 --> 01:23:31,870 e PAAS, che sono acronimi notevolmente confuse 1753 01:23:31,870 --> 01:23:34,400 che descrivono tre diversi tipi di cose. 1754 01:23:34,400 --> 01:23:36,400 E gli acronimi stessi in realtà non importa. 1755 01:23:36,400 --> 01:23:38,360 Questa è tutta la roba nuvola abbiamo appena parlato, 1756 01:23:38,360 --> 01:23:41,570 la roba livello inferiore, la virtualizzazione di hardware e storage 1757 01:23:41,570 --> 01:23:44,890 nella cosiddetta nuvola, che si tratti di Amazon, Microsoft, Google, o altro. 1758 01:23:44,890 --> 01:23:47,270 >> Software come un servizio-- tutti noi sorta di utilizzare questo. 1759 01:23:47,270 --> 01:23:49,810 Se utilizzi Google Apps per Gmail o calendario, 1760 01:23:49,810 --> 01:23:52,530 uno di questi basata su web applicazioni che 10 anni fa abbiamo 1761 01:23:52,530 --> 01:23:55,560 avrebbe icone doppio click su il nostro desktop, software come servizio 1762 01:23:55,560 --> 01:23:57,400 è ora davvero di applicazioni web. 1763 01:23:57,400 --> 01:24:00,110 E piattaforma come servizio di tipo di dipende. 1764 01:24:00,110 --> 01:24:03,140 >> E un esempio ti darò qui nel contesto del cloud computing-- 1765 01:24:03,140 --> 01:24:06,250 c'è una società che è abbastanza popolare in questi giorni, Heroku. 1766 01:24:06,250 --> 01:24:08,940 E sono un servizio, una piattaforma, se si vuole, 1767 01:24:08,940 --> 01:24:11,730 che corre in cima l'infrastruttura di Amazon. 1768 01:24:11,730 --> 01:24:15,800 E hanno appena rendono ancora più facile per gli sviluppatori e gli ingegneri 1769 01:24:15,800 --> 01:24:18,330 per ottenere applicazioni web-based on-line. 1770 01:24:18,330 --> 01:24:22,170 >> È un dolore, inizialmente, da usare Amazon Web Services e altre cose. 1771 01:24:22,170 --> 01:24:24,170 Perché in realtà hanno per conoscere e capire 1772 01:24:24,170 --> 01:24:27,617 sui database e server web e bilanciamento del carico e tutte le cose 1773 01:24:27,617 --> 01:24:28,450 Ho appena parlato. 1774 01:24:28,450 --> 01:24:32,780 Perché tutto Amazon ha fatto non è nascosto queste sfide progettuali. 1775 01:24:32,780 --> 01:24:35,790 Hanno semplicemente virtualizzati e spostarli in un browser, 1776 01:24:35,790 --> 01:24:37,770 in software invece di hardware. 1777 01:24:37,770 --> 01:24:43,020 >> Ma le aziende come Heroku e altro fornitori di PAAS, Platform as a Service, 1778 01:24:43,020 --> 01:24:46,900 usano quelle basi barebone che abbiamo appena parlato, 1779 01:24:46,900 --> 01:24:50,340 e costruiscono più facile utilizzare il software su di esso 1780 01:24:50,340 --> 01:24:54,241 in modo che se si vuole ottenere un web based- domanda on-line in questi giorni, 1781 01:24:54,241 --> 01:24:55,990 certamente deve conoscere la programmazione. 1782 01:24:55,990 --> 01:25:00,280 È necessario conoscere Java o Python o PHP o Ruby o un mucchio di altre lingue. 1783 01:25:00,280 --> 01:25:02,180 >> Ma è anche necessario un posto dove metterlo. 1784 01:25:02,180 --> 01:25:04,790 E abbiamo parlato in precedenza su ottenere una società di web hosting. 1785 01:25:04,790 --> 01:25:08,630 Questo è il genere di simili metà degli anni 2000 approccio per ottenere qualcosa online. 1786 01:25:08,630 --> 01:25:12,140 Al giorno d'oggi si potrebbe invece pagare qualcuno come Heroku un paio di dollari al mese. 1787 01:25:12,140 --> 01:25:15,370 E in sostanza, una volta che hai fatto qualche configurazione iniziale, 1788 01:25:15,370 --> 01:25:18,704 per aggiornare il tuo sito web, basta digitare un comando in una finestra. 1789 01:25:18,704 --> 01:25:21,370 E qualunque codice che hai scritto qui sul vostro computer portatile subito 1790 01:25:21,370 --> 01:25:24,350 viene distribuito a qualsiasi numero di server nel cloud. 1791 01:25:24,350 --> 01:25:26,440 >> E Heroku si prende cura di tutta la complessità. 1792 01:25:26,440 --> 01:25:28,930 Essi figura tutto il database roba, tutto il bilanciamento del carico, 1793 01:25:28,930 --> 01:25:31,480 tutti i mal di testa che abbiamo appena scritto sul tabellone, 1794 01:25:31,480 --> 01:25:33,320 e nascondere tutto questo per voi. 1795 01:25:33,320 --> 01:25:36,170 E in cambio, è sufficiente loro pagare un po 'di più. 1796 01:25:36,170 --> 01:25:39,810 In modo da avere queste infrastrutture come un servizio, piattaforme come servizio, 1797 01:25:39,810 --> 01:25:41,400 e poi software come servizio. 1798 01:25:41,400 --> 01:25:45,390 È, di nuovo, questa l'astrazione o stratificazione. 1799 01:25:45,390 --> 01:25:51,187 >> Tutte le domande sul cloud o costruire la propria infrastruttura? 1800 01:25:51,187 --> 01:25:52,270 Va bene, che era un sacco. 1801 01:25:52,270 --> 01:25:54,200 Perché non andiamo avanti e prendere il nostro pausa di 15 minuti qui. 1802 01:25:54,200 --> 01:25:57,241 Torneremo con alcuni nuovi concetti e un po 'di hands-on opportunità 1803 01:25:57,241 --> 01:25:59,110 prima di sera è finita. 1804 01:25:59,110 --> 01:26:00,332