DAVID Malan: Hola, món, aquesta es CS50Live, i noi, nosaltres també
tenir un episodi increïble per a vostè avui.
En primer lloc, una mirada a l'interior de com Dropbox funciona, llavors una estreta
veure diminuts hàmsters menjar petites burritos,
i, finalment, una mirada darrere de les escenes de veure en la nova pel · lícula de CS50, Persistència.
>> Però primer, Dropbox.com, on recentment
va viatjar a San Francisco, Califòrnia, per reunir-se amb l'ex cap de CS50
company d'ensenyament, Thomas Carriero que ens va donar un tour de Dropbox
i és exactament el que se sent en treballar i, m'atreveixo a dir que viure allà.
Ara ens asseiem no només amb Thomas mentre que allà,
sinó també amb l'ex de CS50 company d'ensenyament cap Alex Allain
per parlar sobre el subjacent funcionament de Dropbox.com
i es distribueix l'arquitectura.
Anem a fer una ullada.
THOMAS Carriero: Sóc Thomas Carreiro Sóc un enginyer de programari de Dropbox.
ALEX ALLAIN: Sóc Alex Allain.
Sóc enginyer aquí a Dropbox.
>> THOMAS Carriero: Sí, així que estava en realitat el primer CF cap per CS50
quan David Malan es va fer càrrec de la classe.
Jo ja havia estat ensenyant CS50 durant dos semestres
amb Mike Smith, que hi era el professor abans d'allà.
>> ALEX ALLAIN: Així que en realitat no va prendre CS50,
però ho vaig fer TF dues vegades, una vegada com TF regular i després en el meu últim any,
Jo estava en realitat Cap del TF CS50, que era un munt de diversió.
THOMAS Carriero: Així que quan David es va acostar a mi
sobre la configuració de Dropbox en l'aparell CS50,
Jo estava molt emocionat, perquè de fet tenim un client Linux.
La majoria dels nostres usuaris utilitzen ja sigui Finestres o els clients de Macintosh,
però el Linux, Macintosh i Els clients de Windows són, en realitat,
molt similar.
Així que el que vam fer és que pre-instal lat el client de Dropbox Linux al CS50
aparell, i funciona com tots els nostres altres usuaris de Linux.
>> ALEX ALLAIN: Així que el manera Dropbox funciona és que
funciona com el client en molts diversos sistemes operatius i dispositius.
El client d'escriptori Drobox és un dels més coneguts,
un dels més interessants.
>> THOMAS Carriero: Així Dropbox bàsicament pren tots els arxius
que es posa al trossos de carpetes, i
aquests arxius en quatre trossos megabyte.
Així que anem a fer una 100 arxiu PDF megabyte, i anem a
tros en 25 trossos de quatre megabytes.
Aquests trossos són llavors encriptades, i després els enviem els nostres servidors de bloc.
>> ALEX ALLAIN: Els servidors de bloc són l'emmagatzematge dels mateixos blocs,
i pel que cada bloc s'emmagatzema en el servidor de bloc amb les dades
i un hash SHA-256 que bloqueja.
Aquesta és una encriptació molt bàsic primitiu que resumeix, en cert sentit,
les dades en un molt un únic manera que és única per aquestes dades.
Vostè podria pujar el conjunt d'arxius d'una sola vegada,
però resulta que si ho fa que amb arxius molt grans,
es prenen un temps molt llarg per carregar, i si es produeix una fallada,
vostè està fora de sort i has de reiniciar.
El que a continuació fem és que diem un altre servidor en el nostre sistema, el que
que anomenem el servidor meta, el servidor de metadades, hey, aquest és un arxiu
i està compost pel llista de blocs.
I passem els hashes per identificar aquests blocs
en lloc de tornar a pujar tot el bloc.
El servidor de meta després xecs amb els servidors de bloc,
fa que els blocs hi són - si el so, perfecte, tot és bo.
>> THOMAS Carriero: Quan volem que, bàsicament, descarregui l'arxiu
des d'Internet, diguem, li demanarem primer servidor del meta,
Hey, em pot dir sobre on es troba aquest arxiu,
i el servidor de metadades dirà, oh, bé, aquest fitxer és en realitat 25 de quatre megabytes
trossos, i aquí estan.
I després ens anem al bloc servidor i ens posarem en realitat
descarregar cada un dels trossos, i després anem a reconstruir l'arxiu des d'allà,
i després anem a començar la descàrrega.
Sí, i ofertes de Dropbox amb l'escala, bàsicament,
per molt, sharding molt agressiu.
ALEX ALLAIN: Així sharding és quan es pren
tots els usuaris en el seu inici o la seva empresa,
i potser s'utilitzen estar en una base de dades,
i que funciona molt bé fins que copejar un cert nombre d'usuaris,
i realment el que vols de fer és trobar alguna manera
per dividir els a través de dues bases de dades o potser més de dos -
idealment, prou perquè puguis tenir tots els usuaris en el món.
Així que quan vostè fragment, el que fas és que trobi
alguna manera de decidir que la base de dades per anar
que no requereix colpejar a un directori central,
o potser és un molt ràpid, barat Cerca de contactes en aquest directori central.
>> THOMAS Carriero: Nosaltres mai hem tot el emmagatzemat en una base de dades,
perquè això és gairebé mai va a escalar.
Així que en lloc, el que fem és que ens prendrem tot que la informació, tots els arxius
són totes les metadades i anem fragment que
llarg de centenars o milers bases de dades de lògiques.
Això vol dir que quan tenim un sol · licitud d'informació d'un usuari,
anem primer diem, escolta, quina base de dades és la informació de l'usuari emmagatzemada en,
i després anem bàsicament fem servir aquesta decisió d'anar a buscar a aquesta base de dades,
i aquí és on anem a carregar tots els arxius o totes les metadades
sobre els arxius.
Així que fem servir un munt de sharding, però sharding no sempre és suficient.
Segur que necessita per emmagatzemar en memòria cau 1 Moltes de les peticions comunes,
perquè tot i que la base de dades consultes poden ser costosos.
Així també fem progressiva estratègies d'emmagatzematge en memòria cau
per assegurar-se que la més comuna peticions són bastant fàcils de calcular,
i, bàsicament, el que fa que sigui molt més més ràpid i fa que funcioni a escala.
Així que això és, a un nivell molt alt, classe de com funciona Dropbox.
>> ALEX ALLAIN: El meu nom és Alex Allain.
>> THOMAS Carriero: Sóc Thomas Carreiro.
ALEX ALLAIN: I això és CS50.
>> DAVID Malan: Ara bé, si alguna vegada es va preguntar on aquesta cita a la pàgina web del CS50
ve, en realitat Alex qui és l'autor original.
Ara, parlant de Dropbox, fa poc rebut aquest correu electrònic d'ells
en la meva safata d'entrada - Hola, David, és possible que compte que alguns dels seus enllaços compartits
no estan funcionant, i nosaltres volia arribar a tu
personalment per fer-li saber per què.
Bé, què és un enllaç compartit?
Bé, si vostè ha utilitzat més enllà de Dropbox simplement guardar el codi font a l'interior
l'aparell, es podria saber que vostè
pot crear enllaços compartits per clic típicament dret sobre un arxiu
i copiar la URL al portapapers.
Aquest vincle compartida pot veure una mica alguna cosa com això, però en el seu lloc
de la paraula secreta, hi ha en realitat una mica més críptic
allà, com una seqüència de lletres i nombres aleatoris.
L'ésser idea que ara puc enviar per correu electrònic o Gchat aquest tipus de ruta d'un amic,
i ell o ella podria tenir accés CS50.txt i descarregar al seu ordinador.
I només per saber que url, o amb súper, súper baixa probabilitat, endevinant
aquesta url, podria algú més realment accedir a l'arxiu.
>> Desafortunadament una empresa conegut com Intralinks
recentment publicat a seva CollaboristaBlog
que en realitat hi ha un parell de amenaces a aquest flux de treball en particular.
Resulta que si accidentalment cometre un error, com jo, francament,
ho han fet en el passat, i enganxar un URL com un enllaç de Dropbox per compartir,
a no la direcció del seu navegador bar, però com es mostra aquí,
la barra de cerca, que url, per descomptat, va
que se sotmetrà a un motor de cerca com Google.
Per descomptat, Google no va a reconèixer necessàriament aquest vincle comú,
i pel que anem a obtenir més recerca genèrica
resultats com un enllaç Dropbox.com a si mateix,
i en aquest cas, un anunci, i De fet, anuncis, potencialment,
per als competidors de Dropbox.
De fet, així és com Intralinks adonat d'això - que,
també, s'executa una de AdSense campanya juntament amb les paraules clau
que Dropbox mateixos poden utilitzar.
I així, si ens centrem en els resultats de fons aquí,
veuràs que té Inralinks aquest enllaç al seu propi servei.
Ara una de les característiques de Google i altres motors de cerca '
campanyes de publicitat és que quan un usuari com jo fa clic en aquest enllaç, ara,
Vaig a ser la divulgació de la url que vaig escriure a Google per tal
per trobar aquests resultats de cerca.
La idea és que empreses els agradaria saber
com les persones estan trobant el seu lloc web.
Per descomptat, si he trobat En aquesta pàgina de resultats
clavant una altra banda url secret a Google,
He ara, efectivament, aquest Intralinks i de la seva web
registres exactament el url secret que es trobava de visita, divulgar, per tant,
potencialment, el contingut CS50.txt.
Ara, hi ha una altra amenaça tots junts -
vostès saben, també, de Dropbox enllaços compartits que normalment pot
obrir dins del seu propi navegador i una vista prèvia d'ells a l'interior
d'un marc com aquest.
Però si aquesta vista prèvia conté un hipervincle,
com es mostra aquí per Example.com, i vostè o un clic del usuari
que hipervincle, obrint d'aquesta manera un nova pestanya o finestra amb la pàgina d'
url, el que ha també acaba de dir a la web servidor, per la naturalesa de com funciona HTTP,
és l'HTTP refereixen direcció d'on van venir.
En altres paraules, l'informarem el lloc web de destinació
que vostè era abans en aquesta url suposadament secret.
Ara, què Intralinks descobert mirant a través dels seus propis registres
és que es troben una mica d'informació que va ser sens dubte
destinat a ser secret - per exemple, la hipoteca d'algú
sol · licitud, la declaració d'impostos d'una altra persona, i raïms de més documents, així.
Ara, per obtenir més sobre aquesta amenaça en particular,
dirigir-se a quadre de segueix en la següent adreça aquí,
i la realitat és que vostè no pot realment defensar d'una amenaça en la qual les persones
com jo pego accidentalment el que ha de ser adreces secretes en els motors de cerca.
Tu i jo simplement va a ha de ser una mica més acurat.
Però ells han estat treballant en reparar l'altre problema pel qual
vincles que s'incrusten en un Dropbox vista prèvia van ser revelant la url referir.
Però anar a la url per a més detalls.
>> Però ara, com havia promès, una mirada més propera en petits hàmsters mengen petits burrets.
>> [REPRODUCCIÓ DE MÚSICA]
DAVID Malan: l'equip d'ara CS50 recentment va tenir l'oportunitat
per participar en un Projecte de la pel.lícula de 48 hores,
una organització internacional la competència durant el qual
equips tenia, de fet, 48 hores tot sol per fer una pel · lícula.
El problema és que només esbrinar el que la pel · lícula
que hagi de fer en el mateix començar d'aquestes 48 hores.
En particular, en un recent Divendres a la nit a les 7:00 pm,
ens vam assabentar que a CS50 estaríem fer un, una pel · lícula muda, dos,
que la pel · lícula necessitava compten amb un personatge anomenat
Jeremies Jones, un professor, 3, que la pel · lícula necessària
que compten amb un diari, aquest d'aquí, i quatre,
que havíem de incloure d'alguna manera la línia és el que és encara
encara que, per descomptat, estaven fent una pel · lícula muda.
>> Ara, 26 membres de l'equip de CS50 participat en aquesta pel · lícula 48 hores
projecte, entre ells Colton, Donen, Padraig i Shelley
Westover, a qui es recordarà des pel · lícules com aquesta d'aquí.
Ara, també implicat, per descomptat, va ser el mateix Ramon Galván l'CS50.
Ramon, benvingut al xou.
RAMON GALVAN: Gràcies per convidar-me.
DAVID Malan: I de CS50 posseir Daven Farnham.
Ara, Ramon, el que va ser seu paper en la pel · lícula?
>> [?
RAMON GALVAN: codi de vol] director amb Dan, en realitat.
>> DAVID Malan: I Daven, vostè mateix?
Daven FARNHAM: jo era l'estrella, així que bàsicament va fer el projecte.
Em va salvar la pel.lícula.
>> DAVID Malan: Vostè va salvar la pel.lícula.
>> Daven FARNHAM: jo ho vaig fer.
>> DAVID Malan: Ara, dir això, però crec
tenim la prova de pantalla per aquesta pel · lícula.
Si poguéssim rodar aquest clip aquí.
>> Daven FARNHAM: El meu nom és Daven Farnham, i això és CS50.
Volia dir CSS.
Aquest és CSS.
>> DAVID Malan: Ara aquesta era la seva primera pel · lícula?
>> Daven FARNHAM: Uh, no, potser.
>> DAVID Malan: No, bé, almenys aquesta vegada es tractava d'una pel · lícula muda.
Daven FARNHAM: Si.
DAVID Malan: Així que a les 7:00 de la tarda, ens trobem aquests ingredients requerits,
i després immediatament bussejat en com un grup
esbrinar quina pel · lícula estem eren en realitat va a fer.
Vols caminar amb nosaltres a través de quina era aquella nit com?
>> Daven FARNHAM: Així que, bàsicament, ens van donar la idea a les 7:00,
que bàsicament vam començar a una pluja d'idees, pel que fem tot tipus de
reunit al voltant d'una pissarra i va començar una pluja d'idees,
i després a les 9:00, ho vam intentar per tirar fora els escriptors,
i els escriptors el van portar d'allà.
>> DAVID Malan: I mentrestant, Dan i Shelley i jo en realitat
dirigit a Target, per descomptat, la nostra botiga prop favorit,
recollir tots els accessoris per a la pel · lícula havíem decidit, que en aquest moment
era -
Daven FARNHAM: Havíem decidit en una pel · lícula d'aventures de paritat.
DAVID Malan: whic anava a ser molt a l'estil Indiana Jones.
Daven FARNHAM: Sí, així que necessitàvem un toro fuets i necessitàvem un barret de feltre i aquestes coses.
DAVID Malan: I una molt peça ornamental de la joieria
que després seria trobar al final de l'episodi.
Per descomptat, tornem a mitjanit o així de Target
i s'adonen, doncs no, això no és la pel · lícula que estem fent - psych.
Daven FARNHAM: Completament diferent de la pel · lícula.
RAMON GALVAN: Teníem una pel · lícula noir durant un parell d'hores,
després vam tenir una romàntica comèdia al final.
>> DAVID Malan: Així que abans de les 4:00 am, vam tenir una la comèdia romàntica, i al voltant de les 5:00 am,
tu i Dan, l'altre director, va aparèixer.
>> RAMON GALVAN: Sí, així que ens van donar junts i quin tipus de planejat
on Wold rodatge, el que és escenes que dispararien primer,
i després al voltant de les 7:00 o 08 a.m., es en realitat va sortir i va començar a disparar.
>> DAVID Malan: Bé, si vostè pot quedar-se,
ens agradaria fer alguns darrere de les escenes analitza com es va fer la pel · lícula,
però crec que en primer lloc, d'acord donar a la gent l'estrena mundial
de la pel.lícula de CS50, Persistència.
>> [REPRODUCCIÓ DE MÚSICA]
>> DAVID Malan: Nois, vull dir - així que anem a començar des del principi.
Així que la primera escena tots vam rodar en grup
aquell matí va tenir lloc al voltant de les 8:00 A.M, i en realitat estàvem aquí,
Jefferson Hall, que és en realitat una de les sales de lectura de la física al campus.
I quin va ser l'objectiu amb aquesta escena?
RAMON GALVAN: Així que ens quedem aquí per iniciar la pel · lícula, Daven
com un mestre, un company de l'ensenyament, o un ajudant d'ensenyament, cosa
d'aquesta manera, i ell estava molt molest que veu a aquesta parella sortint
i ell vol això.
Ell vol estar en una relació, ell simplement no el té.
DAVID Malan: I després la següent escena, fem la transició a la realitat
no es va rodar en ordre.
De fet, aquí, vostè és -
>> Daven FARNHAM: Així aquí, en realitat, que rodem
aquest aquesta - aquesta va ser una de les últimes escenes que rodem,
però això en realitat mostra a dalt a el principi de la pel · lícula.
I així, en aquesta escena, és una muntatge, i per tant el que estic fent
és que m'estic posant a la colònia, Estic pentinar.
>> DAVID Malan: Utilitza colònia?
Daven FARNHAM: Uh, Ramon colònia, un munt de colònia.
>> DAVID Malan: I de qui camisa?
>> Daven FARNHAM: Ei, camisa de Ramon.
>> DAVID Malan: Així que això era més que una sola presa, i la camisa per al final
era bastant -
>> Daven FARNHAM: Sí, crec que vam haver de prendre tres o quatre
presa, de manera que cada presa era tres dolls, per la qual cosa
eren prop de 12 dolls de colònia.
Així que feia olor a aquesta colònia per a la resta del dia.
>> DAVID Malan: Bé, menys, molt ràpidament.
Ens transitioned exterior, i, de fet, si et fixes bé,
això és en realitat CS50 de pròpia Caraballo Lauren.
Però el que eres pensant amb aquesta escena?
>> Daven FARNHAM: Dret, pel que en aquesta escena, que estem tractant de cridar la seva atenció.
Així que estic caminant per ella, Estic peacocking, és clar.
>> DAVID Malan: Peacocking?
>> Daven FARNHAM: Oh, no ho saps?
>> RAMON GALVAN: Uh, ho hauria de fer?
>> Daven FARNHAM: Sí, Per descomptat, és clar.
Així caminar normal, per descomptat, és simplement caminar normal.
DAVID Malan: Així que aquesta és la marxa normal?
Daven FARNHAM: Això és caminar normal.
Peacocking, llançar una petites malucs allà.
RAMON GALVAN: És realment bé aquí.
Daven FARNHAM: Tot està bé aquí.
És a partir d'aquesta condició - Tot està en els malucs.
I després, al final, vostè ha de esclatar i bloqueig.
És clau per a la maniobra - és clau.
DAVID Malan: Pop i pany.
Està bé, bé, en realitat es va fer un molta comèdia física en la pel · lícula.
De fet, una de les escenes estar aquí en Lamont Library, fora de la porta.
>> Daven FARNHAM: Sí, són aquí, així que estic realment
intentant - Crec que és un tiri de la porta i estic empenyent,
i com aquesta escena progressa, Estic empenyent i empenyent
cada vegada més agressiva.
I crec que al final, algú en realitat em colpeja fora del camí.
>> DAVID Malan: Sí, i en De fet, no ens vam adonar del -
fins a la fase d'edició.
>> RAMON GALVAN: Sí, així que, si ens zoom en aquest tir, i Dan,
podem millorar una mica?
Bé, perfecte.
Així que has de veure vaig ajupir sobre a aparèixer i colpejar Daven a la cara
amb la porta.
DAVID Malan: Que bé que ens va trobar imatges tot just unes hores abans que
va haver d'enviar les pel · lícules per a la data límit.
D'acord, bé, gràcies tant als dos per a la unió i per protagonitzar aquests -
Daven FARNHAM: Oh, no, gràcies.
RAMON GALVAN: Gràcies.
DAVID Malan: - una pel · lícula en moviment.
Bé això és tot per CS50Live.
Moltes gràcies als nostres amics de Dropbox, moltes gràcies a tothom
darrere de la càmera, CS50 propi Ramon Galván i Daven Farnham.
Aquest va ser CS50 i aquest era la nostra escena preferida
això no ho fan en la pel · lícula.
DIRECTOR 1: Anem a tenir el cotxe a la carretera?
DIRECTOR 2: Ja ve, això està bé.
[TOCAR LA BOTZINA BOTZINA]
ACTRIU: Whoa.
Oh, déu.