DAVID MALAN: Très bien, bienvenue. Avant de nous plonger dans le cloud computing, Je pensais que je pause pour un moment s'il y a des questions en suspens ou des sujets qui ont été soulevés pendant le déjeuner qui pourrait maintenant être d'intérêt. AUDIENCE: [Inaudible] DAVID MALAN: OK. Ah d'accord. AUDIENCE: [Inaudible] DAVID MALAN: Non, bien sûr. OK, bien, espérons tous vos des problèmes se posent dans les prochaines heures et demain en particulier. Mais nous allons jeter un coup d'oeil, puis, à laquelle la dernière discussion sur la mise en place un site Web conduit, plus généralement quand il vient à l'informatique en nuage, la mise en place d'une architecture de serveur, les types de décisions que les ingénieurs et les développeurs et les gestionnaires besoin de faire quand il vient à faire plus que juste signer pour un 10 $ par mois hébergeur quand vous voulez vraiment de construire des votre propre infrastructure. Et nous allons essayer de lier ce retour, par exemple, pour Dropbox et d'autres comme eux. Commençons donc à considérer quels problèmes se posent en entreprise obtient une bonne et de bons problèmes. Donc, dans le cas le plus simple d'avoir une compagnie qui a un serveur web, vous pourriez avoir, disons, un serveur nous allons simplement tirer qui ressemble à ceci. Et ces jours-ci, la plupart servers-- et celle laisser effectivement mettre une image à ce juste pour qu'il est un peu moins nébuleux. Alors rack Dell Server-- retour dans la journée, il y étaient des ordinateurs centraux qui a eu des salles entières. Ces jours-ci, si vous étiez pour obtenir un serveur, il pourrait ressembler à un petit quelque chose comme ça. Les serveurs sont mesurés dans ce sont appelés unités de rack, ou EF. Et un RU est de 1,5 pouces, qui est une norme de l'industrie. Donc, cela ressemble à un serveur à deux RU. Donc, il est de 3 pouces de hauteur. Et ils sont généralement 19 pouces de large, ce qui signifie que tout ce genre de choses est normalisé. Donc, si vous regardez dans un center-- de données pas seulement à un seul serveur, mais nous allons jetez un oeil à Google centre de données et voir si nous voir une belle image dans Google Images. Ceci est beaucoup mieux éclairée que vous serait typiquement trouver, et bien plus sexy à la recherche comme un résultat. Mais ceci est ce qui ressemble à un couple tous les cent serveurs à ce sujet même taille, en fait, dans le rack après crémaillère après crémaillère après rack dans un centre de données. Quelque chose comme this-- cela peut bien être Google, puisque je googlé Google. Mais il pourrait être représentatif de façon plus générale un centre de données, dans lequel de nombreux les entreprises sont généralement co-localisés. Et co-localisé signifie généralement que vous allez à un endroit comme Equinix ou d'autres fournisseurs qui ont de grandes entrepôts qui ont beaucoup de pouvoir, beaucoup de refroidissement, espérons beaucoup de sécurité, et des cages individuelles renfermant des casiers serveurs, et vous soit louer les crémaillères ou vous apporter les racks. Et les entreprises individuelles, startups en particulier, aura une sorte de biométrie d'entrer dans leur cage, ou une clé, ou une carte clé. Vous ouvrez la porte. Et à l'intérieur de là est juste une séquence empreinte carrée que vous payez pour, à l'intérieur de que vous pouvez mettre ce que vous voulez. Et vous payez habituellement pour le pouvoir. Et vous payez pour les empreintes. Et puis vous payez vous pour les serveurs que vous apportez dans cet espace. Et ce que vous avez alors la possibilité de le faire est de payer quelqu'un pour la connectivité de votre service Internet. Vous pouvez payer un certain nombre des vendeurs, qui tous viennent généralement dans ce centre de données. Mais la vraie question est intéressante, ce qui se passe réellement dans ces casiers? Ils pourraient très bien ressembler à ce que nous venons de voir. Mais ils exercent des fonctions différentes et pourraient avoir besoin de faire des choses différentes. Et de laisser effectivement motiver cette discussion la question de, quel problème commence à se poser si vous avez réussi? Donc, vous avez un site web que vous avez construit. Et peut-être qu'elle vend des widgets ou quelque chose comme ça. Et vous avez fait très bien avec des ventes de widgets en ligne. Et vous commencez à éprouver certains symptômes, votre site Web. Ce qui pourrait être une partie de les symptômes techniques que les utilisateurs signalent que les entreprises est en croissance et en plein essor et votre site Web est bénéficiant de cela? AUDIENCE: [Inaudible] DAVID MALAN: Oui, exactement. Donc, vous pourriez avoir un ralentissement de votre site web. Et pourquoi pourrait-il arriver? Eh bien, si l'on suppose, pour l'intérêt de la discussion en ce moment, que vous êtes sur un de ces hébergeurs commerciaux dont nous avons parlé avant le déjeuner, que vous payez un certain nombre de dollars à par mois, et vous avez déjà payé pour le coût annuel de votre domaine nom, que l'hébergeur est probablement survente leurs ressources dans une certaine mesure. Donc, vous pourriez avoir un nom d'utilisateur et mot de passe sur leur serveur. Mais alors pourrait plusieurs autres, ou plusieurs douzaine d'autres, ou peut-être même plusieurs cent autres, les utilisateurs. Et les sites Web vivent physiquement sur le même serveur. Pourquoi est-ce possible? Eh bien ces jours-ci, les serveurs comme ceci généralement avoir plusieurs disques durs, peut-être autant que six ou plusieurs disques durs, chacun d'entre eux peut-être autant que 4 téraoctets ces jours-ci. Donc, vous pourriez avoir 24 téraoctets d'espace en un peu serveur comme ceci. Et même si vous voler une partie de cet espace pour la redondance, à des fins de sauvegarde, il est encore beaucoup d'espace. Et certainement, un site typique n'a pas besoin de beaucoup d'espace. Juste l'enregistrement des utilisateurs et les journaux de commandes stockage ne prend pas tout ce que beaucoup d'espace. Ainsi, vous pouvez partitionner tout à fait un peu et donner à chaque utilisateur juste une petite tranche de cela. Pendant ce temps, un ordinateur comme cela ces jours-ci a généralement plusieurs CPUs-- pas seulement un, peut-être deux, peut-être quatre, peut-être 16, ou même plus. Et chacun de ces processeurs a quelque chose appelé un noyau, qui est un peu comme un cerveau à l'intérieur d'un cerveau. Donc, en fait presque tout le monde ici avec ordinateurs portables modernes a probablement un dual core ou CPU-- quad core et probablement seulement une unité centrale à l'intérieur d'un ordinateur portable ces jours-ci. Mais les ordinateurs de bureau et les ordinateurs de rack comme cela pourrait avoir un certain nombre plusieurs unités centrales, et à leur tour des noyaux. Et franchement, même dans nos Mac et PC de aujourd'hui, vous n'avez pas vraiment besoin dual core ou quad core pour vérifier votre email. S'il n'y a aucune goulot d'étranglement lorsque il vient à l'aide d'un ordinateur, vous êtes l'homme probablement le plus lent chose sur cet ordinateur. Et tu ne vas pas être en mesure de vérifiez votre email plus rapidement si vous ont quatre fois plus de processeurs ou noyaux. Mais la même chose est genre de la vraie d'un serveur. Un seul site Web peut-être pas nécessairement besoin de plus d'un CPU ou d'un noyau, une petit cerveau à l'intérieur faire tout de la pensée et le traitement. Ainsi, les fabricants ont de même commencé à découper ces ressources de sorte que peut-être votre site obtient un coeur, votre site reçoit un noyau, ou peut-être que nous partageons un tel noyau. Nous sommes également le partage de l'espace disque. Et nous sommes également partager RAM, ou Random Access Memory de devant, dont il y a aussi une quantité finie. Et c'est la clé. Peu importe comment cher l'ordinateur était, il y a encore fini quantité de ressources en elle. Et donc plus en plus que vous essayez de consommer ces ressources, les choses pourraient devenir plus lents. Mais pourquoi? Pourquoi les choses ralentir comme symptôme d'un serveur surchargé? Que ce passe-t-il? AUDIENCE: [Inaudible] DAVID MALAN: Oui, exactement. Je proposais plus tôt que RAM est un type de mémoire. Il est volatile, de sorte que ce où les applications et les données sont stocké quand ils sont utilisés. Et par conséquent, il y a un nombre fini des choses que vous pouvez faire en apparence à la fois. Et il est également plus rapide, Ce qui est une bonne chose. Mais il est aussi plus cher, ce qui est une mauvaise chose. Et il est donc également présent en bas quantités que l'espace disque, disque dur l'espace, qui a tendance à être moins cher. En d'autres termes, vous pourrait avoir 4 téraoctets d'espace disque dans votre ordinateur. Mais vous pourriez avoir 4 gigaoctets, ou 64 gigaoctets, en ordre de grandeur, un facteur de 1000 moins de RAM dans votre ordinateur. Alors qu'est-ce qu'un ordinateur faire? Eh bien, supposons que vous ne possèdent 64 gigaoctets de RAM dans un serveur comme celui-ci, qui serait tout à fait commun, sinon faible ces jours-ci. Mais supposons que vous avez tant de les utilisateurs qui font tant de choses que vous genre de genre de besoin de 65 gigaoctets de mémoire pour gérer tout cela l'utilisation simultanée? Eh bien, vous pourriez dire, désolé, un certain nombre d'utilisateurs juste ne peut pas accéder au site. Et cela est la mesure en dernier ressort, certainement. Ou vous, comme l'exploitation système, comme Windows ou Mac OS ou Linux ou Solaris ou tout nombre d'autres systèmes d'exploitation sur ce serveur, pourrait simplement décider, vous savez quoi? Je n'ai que 64 gigaoctets de RAM. Je sorte de besoin 65. Donc, vous savez quoi? Je vais prendre 1 gigaoctet la valeur des données dans la RAM qui a été le moins récemment accédé et il suffit de déplacer sur le disque temporairement, littéralement le copier depuis le jeûne La mémoire à la mémoire plus lente afin que je puisse ensuite gérer ce besoin de gigaoctet 65e pour la mémoire, faire un peu de calcul sur elle. Puis, quand je suis fait faire, Je vais passer que sur le disque, déplacer cet autre RAM je mets temporairement sur disquette dans le matériel réel de sorte que je suis une sorte de multitâche. Donc, je suis en quelque sorte de mettre les choses temporairement dans cet espace plus lent donc je crée l'illusion de traiter tout le monde. Mais il y a un ralentissement. Pourquoi? Eh bien, à l'intérieur de ces dur disques de nos jours est quoi? Au contraire, ce qui fait un disque conduire différent de RAM mieux que vous savez maintenant? AUDIENCE: [Inaudible] DAVID MALAN: OK, vrai. AUDIENCE: [Inaudible] DAVID MALAN: Donc, très vrai. Et cela est un effet secondaire ou une fonction du fait que la mémoire vive est bien plus rapide. Et par conséquent, vous voulez l'utiliser pour un usage courant. Et un disque est plus lente. Mais elle est permanente, ou rémanente. Donc, vous l'utilisez pour le stockage à long terme. Mais en termes de la mise en œuvre, si je regarde ce qu'on appelle un module DIMM, Dual Inline Memory Module, c'est ce qu'un morceau de RAM pourraient généralement ressembler. Donc, à l'intérieur de notre Mac-- qui est un bug. A l'intérieur de nos Mac et PC, notre bureau ordinateurs auraient bâtons de mémoire, comme vous les appelez, ou DIMMs ou SIMM retour dans la journée, de la mémoire qui ressemblent à cela. Nos ordinateurs portables ont probablement des choses qui constituent un tiers de la taille ou de la moitié de la taille. Ils sont un peu plus petit, mais le même petit idea-- morceaux de silicium vert ou plaquette en plastique qui a peu de jetons noirs sur eux avec beaucoup des fils d'interconnexion tout. Vous pourriez avoir tout un tas de ceux-ci à l'intérieur de votre ordinateur. Mais la livraison est ici il est entièrement électronique. Il y a des électrons juste circulant sur cet appareil. En revanche, si nous regardons l'intérieur d'un disque dur et tirer vers le haut une image ici, vous le feriez à la place voir quelque chose comme cela, qui fait avoir de l'électricité passant par elle en fin de compte. Mais ce qui saute également à vous parler de cette chose? AUDIENCE: [Inaudible] DAVID MALAN: Oui, il y a pièces apparemment en mouvement. Il est un peu comme un vieux disque joueur ou un joueur de phonographe. Et il est à peu près. Il est un peu plus sophistiqué que that-- alors qu'un joueur de phonographe utilisé rainures dans le dossier, ce fait utilise de minuscules particules magnétiques que nous ne pouvons pas tout voir. Mais si un peu particule magnétique ressemble à ceci, il est considéré comme un 1. Et si elle ressemble à ceci, nord-sud au lieu du sud-nord, il pourrait être un 0. Et nous verrons demain comment nous pouvons construire de celui des choses plus intéressantes. Mais tout ce qui est a obtenu de se déplacer physiquement va sûrement aller plus lentement que la vitesse de la lumière, qui en théorie est ce que un électron peut circuler à, mais pas tout à fait réaliste. devices-- Donc mécanique beaucoup plus lent. Mais ils sont moins chers. Et vous pouvez adapter tellement plus de données à l'intérieur d'eux. Donc, le fait qu'il n'y existe dans le monde quelque chose appelée mémoire virtuelle, en utilisant un disque dur comme celui-ci comme si elle était la RAM transparente pour l'utilisateur, tout simplement en déplaçant les données de la RAM sur le disque dur, puis en le déplaçant en arrière quand vous avez besoin nouveau, crée le ralentissement. Parce que vous avez littéralement le copier d'un endroit à l'autre. Et la chose que vous êtes ce copier vers et à partir est en fait plus lent que la RAM où vous voulez qu'il soit. La solution de rechange ici-- si vous ne voulez pas que ralentir, et votre mémoire virtuelle est sorte d'être surtaxés, ce qui est une autre solution à ce problème? AUDIENCE: [Inaudible] DAVID MALAN: Eh bien, l'augmentation de la mémoire virtuelle nous permettrait de le faire sur une échelle encore plus grande. Nous pourrions gérer 66 gigaoctets des besoins en mémoire, ou 67 gigaoctets. Mais suppose que je n'aime pas ce ralentissement, en fait Je veux désactiver virtuelle mémoire si cela est encore possible, Que pouvais-je jeter à ce problème pour le résoudre, où je veux gérer plus d'utilisateurs et plus d'exigences de mémoire que moi physiquement en ce moment? AUDIENCE: [Inaudible] DAVID MALAN: Malheureusement non. Ainsi, la CPU et les noyaux qu'ils sont en sont une ressource finie. Et il n'y a pas d'analogue dans ce contexte. Bonne question, cependant. Donc, juste pour être clair, aussi, si à l'intérieur de cet ordinateur, disons, un bâton de RAM qui ressemble comme this-- et nous appellerons cette RAM. Et ici est le lecteur de disque dur. Et je vais dessiner ce picturalement comme un petit cercle. Il y a de 0 et de 1 dans les deux données these--, nous généralisons comme. Et essentiellement, si un utilisateur est l'exécution d'une application comme, disons, un site Web qui a besoin de cette beaucoup de RAM par utilisateur, ce que je propose, par le biais de cette chose appelée mémoire virtuelle, est de déplacer simplement temporairement que plus ici pour que maintenant je peut se déplacer la mémoire de quelqu'un d'autre exigences là-bas. Et puis, quand cela est fait, Je peux copier ce retour sur et cela va ici, déplaçant ainsi ce que je voulais quelque part ailleurs tout à fait. Donc, il y a juste beaucoup de switcheroo, est la livraison ici. Donc, si vous ne pas comme ça, et vous ne le font pas vouloir mettre quoi que ce soit sur le disque dur, ce qui est en quelque sorte le manifeste La solution de gens d'affaires le problème ou l'ingénieur de solution, d'ailleurs, aussi? AUDIENCE: [Inaudible] DAVID MALAN: Oui, je veux dire littéralement jeter de l'argent sur le problème. Et effectivement, c'est le parfait à enchaîner une partie du niveau supérieur, discussions du cloud computing. Parce que beaucoup de celui-ci est motivé par des décisions financières, même pas nécessairement technologique. Si 64 Go de RAM est trop peu, eh bien, pourquoi ne pas obtenir 128 gigaoctets de RAM? Pourquoi ne pas obtenir 256 gigaoctets de RAM? Eh bien pourquoi pas? AUDIENCE: [Inaudible] DAVID MALAN: Eh bien, il coûte plus d'argent, bien sûr. Et si vous avez déjà rechange espace disque, de manière efficace, ou de manière équivalente, l'espace disque dur est si beaucoup moins cher que vous pourriez aussi bien l'utiliser. Donc, encore une fois, il y a ce compromis que nous avons vu plus tôt ce matin, où il n'y a vraiment pas nécessairement une bonne réponse, il y a juste une réponse meilleure ou pire basé sur ce que vous vous souciez vraiment de. Donc, il y a aussi des réalités technologiques. Je ne peux pas acheter un ordinateur, À ma connaissance, avec un billion de gigaoctets de RAM en ce moment. Cela n'existe pas physiquement. Donc, il y a une limite supérieure. Mais si vous avez même déjà magasiné pour un Mac ou un PC grand public, aussi, en général, il y a cette courbe de caractéristiques où il pourrait y avoir une bonne, une meilleure et un meilleur ordinateur. Et les rendements marginaux sur votre achat du dollar le meilleur ordinateur en fonction le meilleur ordinateur pourrait ne pas être presque aussi élevé que de dépenser un peu plus d'argent et d'obtenir le meilleur ordinateur sur bon ordinateur. En d'autres termes, vous payez une prime pour obtenir le haut de la ligne. Et ce que nous verrons dans la discussion du cloud computing est que ce qui est très fréquent ces jours, et ce que les entreprises comme Google tôt popularisé, n'a pas été payant et bâtiment vraiment envie, chère gonflé les ordinateurs avec beaucoup, beaucoup de tout, mais plutôt d'acheter ou de construire assez ordinateurs modestes, mais beaucoup d'entre eux, et en utilisant quelque chose qui est généralement appelée échelle horizontale au lieu de mise à l'échelle verticale. Donc, mise à l'échelle verticale signifierait obtenir plus RAM, plus dur, plus de tout, et sorte d'investir verticalement dans votre matériel de sorte que vous êtes juste la meilleur du meilleur des meilleurs, mais vous payez pour cela. mise à l'échelle horizontale est sorte d'obtenir le fond des choses de niveau, le bon modèle, ou même le modèle pire, mais obtenir beaucoup d'entre eux. Mais dès que vous avez beaucoup de eux-- par exemple, dans ce cas, serveurs web, si celui-ci serveur ou d'un hébergeur est insuffisante, puis juste intuitivement, la solution à ce problème de la charge ou surcharge sur vos serveurs est soit obtenir un plus grand serveur ou, ce que je propose ici au lieu de mise à l'échelle verticale pour ainsi dire, serait, vous savez quoi? Juste obtenir un second un d'eux. Ou peut-être même obtenir un troisième. Mais maintenant, nous avons créé un problème d'ingénierie par la nature de cette activité ou d'une décision financière. Quel est le problème de l'ingénierie maintenant? AUDIENCE: [Inaudible] DAVID MALAN: Ouais, comment faire vous les connectez et-- désolé? AUDIENCE: [Inaudible] DAVID MALAN: Droit, parce que je have-- encore si je me réintroduire dans cette image, si tel est mon ordinateur portable quelque part sur l'Internet, qui est maintenant entre moi et la société dont nous parlons, maintenant je dois comprendre, à laquelle serveur dois-je envoyer cet utilisateur particulier? Et s'il y a d'autres utilisateurs, comme cela, et puis celui-ci ici, et peut-être cela est l'utilisateur A, ce est l'utilisateur B, ceci est l'utilisateur C, et ceci est le serveur 1, 2 et 3-- maintenant une réponse intuitive pourrait ici être juste, nous vous enverrons l'utilisateur A à 1 et B 2 et C 3. Et nous pouvons traiter 3 fois autant d'utilisateurs. Mais c'est une simplification excessive. Comment décidez-vous qui envoyer où? Essayons donc de raisonner à travers cela. Donc, supposons que les ordinateurs A, B et C sont des clients, et les serveurs 1, 2 et 3 sont à l'échelle horizontalement les serveurs. Ils sont donc en quelque sorte identique. Ils sont tous en cours d'exécution le même logiciel. Et ils peuvent tous faire la même chose. Mais la raison pour laquelle nous avons trois d'entre eux est si que nous pouvons gérer trois fois plus de personnes à la fois. Donc, nous savons de notre discussion avant le déjeuner qu'il ya du matériel entre les ordinateurs portables et les serveurs. Mais nous allons juste une sorte de généraliser que maintenant que l'Internet ou le nuage. Mais nous savons que, dans ma maison, il y a probablement un routeur domestique. Près des serveurs, il y a probablement un routeur, serveur DNS, DHCP. Il peut y avoir quoi que ce soit nous voulons dans cette histoire. Alors, comment nous commençons à décider de faire, lorsque l'utilisateur A va à something.com, quel serveur pour acheminer l'utilisateur? Comment pourrions-nous commencer à raconter cette histoire? AUDIENCE: L'équilibrage de charge? DAVID MALAN: L'équilibrage de charge. Que veux-tu dire par là? AUDIENCE: Le retour où l'utilisation est plus et que l'on a le la plupart des ressources disponibles. DAVID MALAN: OK, alors laissez-moi introduire un nouveau type de matériel que nous avons pas encore discuté, qui est exactement cela, un équilibreur de charge. Cela pourrait aussi être simplement un serveur. Il pourrait ressembler exactement celui que nous avons vu il y a un moment. Un équilibreur de charge est vraiment juste un morceau de logiciel que vous exécutez sur un morceau de matériel. Ou vous pouvez payer un fournisseur, comme Citrix ou autres, Cisco ou autres. Vous pouvez payer pour leur propre matériel, qui est un équilibreur de charge matérielle. Mais cela signifie juste qu'ils pré-installé l'équilibrage de charge un logiciel sur leur matériel et vendu à vous tous ensemble. Nous allons donc tirer comme rectangle pour nos besoins. Comment puis-je mettre maintenant un équilibreur de charge? En d'autres termes, lorsque l'utilisateur A veut visiter mon site, leur demande en quelque sorte ou autre, probablement par voie de ceux routeurs dont nous avons parlé plus tôt, va éventuellement atteindre ce équilibreur de charge, qui a ensuite doit prendre une décision de routage de type. Mais il est le routage de tri d'un but plus élevé maintenant. Il ne suffit pas à obtenir à partir du point A au point B. Il est à propos de décider quel point B est le meilleur parmi eux-- 1, 2, ou 3 dans ce cas. Alors, comment puis-je décider pour aller à 1, à 2, à 3? Que pourrait cette boîte noire, pour ainsi parler, se faire à l'intérieur? Cela aussi est un autre exemple dans la science informatique de l'abstraction. Je l'ai littéralement dessiné un équilibreur de charge comme une boîte noire à l'encre noire, à l'intérieur qui est un peu intéressant la logique, ou la magie même, d'où doit venir un decision-- 1, 2 ou 3. Et l'entrée est juste A. AUDIENCE: [Inaudible] DAVID MALAN: Je suis désolé? AUDIENCE: [Inaudible] DAVID MALAN: Très bien, comment pourrions-nous classer les types de transactions ici? AUDIENCE: Affichage d'une page Web par rapport à l'interrogation d'une base de données. DAVID MALAN: OK, ce qui est bon. Alors peut-être cet utilisateur A veut afficher une page web. Et peut-être il est même contenu statique, quelque chose qui change rarement, voire jamais. Et cela semble comme un opération assez simple. Alors peut-être nous allons simplement arbitrairement, mais raisonnablement, dire, le serveur 1, son but dans la vie est pour servir juste en haut du contenu statique, fichiers rarement, sinon jamais, le changement. Peut-être que ce sont les images de la page. Peut-être qu'il est le texte sur la page ou autre ces sortes de choses sans intérêt, rien transactionnel, rien dynamique. En revanche, si l'utilisateur A vérifie sur son panier qui nécessite une base de données, un endroit pour stocker et se rappeler que la transaction, ainsi peut-être que la demande devrait aller au serveur 2. Donc, ce qui est bon. Donc, nous pouvons charger basé équilibre le type de requêtes. Sinon, comment pourrions-nous faire cela? Quel autre-- AUDIENCE: Basé sur le serveur de l'utilisation et de la capacité. DAVID MALAN: Droite, OK. Donc, vous avez mentionné plus tôt, Kareem. Alors, que si nous fournissons une certaine entrée sur [Inaudible] entre les serveurs 1, 2, et 3 à cette équilibreur de charge de telle sorte que ils sont juste en permanence informer l'équilibreur de charge ce que leur statut est? Comme, hé, équilibreur de charge, Je suis à 50% d'utilisation. En d'autres termes, je dois moitié autant d'utilisateurs comme je peux effectivement gérer en ce moment. Hey, équilibreur de charge, je suis à 100% d'utilisation. Hey, équilibreur de charge, 0% d'utilisation. L'équilibreur de charge, si elle est conçu de façon à ce que peut prendre dans les commentaires comme entrée, il peut alors décider, ooh, le numéro 2 est à 100%. Permettez-moi de ne pas envoyer les demandes futures pour lui autres que les utilisateurs déjà connectés. Ce type est à 0%. Envoyons beaucoup de trafic vers lui. Ce gars a dit qu'il est à 50%. Envoyons un peu de trafic à lui. Ce serait donc un ingrédient, que nous pourrions prendre en compte la charge. Et ça va changer au fil du temps. Ainsi, les décisions vont changer. Voilà donc une très bonne technique, celui qui est couramment utilisé. Que pourrions-nous faire? Et nous allons en fait juste résumer ici. Ainsi, les décisions pourraient être ici par type de trafic, je vais l'appeler. Elle peut être basée sur la charge. Voyons voir si nous ne pouvons pas venir avec quelques autres. AUDIENCE: [Inaudible] DAVID MALAN: Situation. Voilà donc une bonne chose. Alors location-- comment pourriez-vous tirer parti de cette information? AUDIENCE: [Inaudible] DAVID MALAN: Oh, ce qui est bon. Et à combien de millisecondes serait-il diminuer de sur la base de ce que nous avons vu cette matin, diriez-vous? AUDIENCE: [Inaudible] DAVID MALAN: Eh bien, sur la base sur les routes de trace nous avons vu plus tôt, ce qui est juste une mesure approximative de quelque chose, au moins le temps qu'il faut pour les données pour aller de A à B se sent comme quelque chose locale était, quoi, comme 74 millisecondes, donner ou prendre? Et puis quoi que ce soit 100 plus, 200, plus était probablement à l'étranger. Et sur la base de ce seul, il semble raisonnable de supposer que pour un utilisateur aux Etats-Unis accéder à un serveur européen pourrait prendre deux ou trois fois aussi longtemps, même en millisecondes, que cela pourrait prendre si ce serveur était situé ici géographiquement, ou vice versa. Alors, quand je proposais en particulier que plus tôt une fois que vous traversez que 200 millisecondes seuil, donner ou prendre, les humains ne commencent à remarquer. Et la route trace est juste en supposant que, les données inintéressantes premières. Lorsque vous avez un site Web, vous devez obtenir l'utilisateur de télécharger des images ou des films fichiers, beaucoup de texte, les demandes ultérieures. Nous avons vu lors de notre visite, ce qui était elle, Facebook ou Amazon plus tôt, il y a un tas de trucs qui doit être téléchargé. Donc, cela va ajouter. Donc, multi-secondes pourrait pas déraisonnable. Alors bon, la géographie est un ingrédient. Ainsi, dans les sociétés de fait comme Akamai, si vous avez entendu parler d'eux, ou d'autres ont depuis longtemps pris la géographie en compte. Et il se trouve que, par nature, d'un l'adresse IP, l'adresse IP de mon ordinateur portable, vous pouvez déduire, avec une certaine probabilité, où vous êtes dans le monde. Et en fait, il y a services tiers vous peuvent payer qui maintiennent des bases de données des adresses et des zones géographiques IP que, avec une grande confiance sera vrai lorsqu'on lui a demandé, où dans le monde est cette adresse IP? Et donc, en fait, ce que d'autres entreprises utilisent ce? Si vous avez Hulu ou Netflix si vous avez déjà voyagé à l'étranger, et vous essayez de regarder quelque chose sur Hulu, et vous n'êtes pas aux États-Unis, vous pourriez voir un message dire, pas aux États-Unis. Désolé, vous ne pouvez pas voir ce contenu. AUDIENCE: [Inaudible] DAVID MALAN: Oh, vraiment? Mais oui, donc en fait que ce une application parfaite de quelque chose de très technique à un problème réel. Si vous deviez VPN Europe ou en Asie ou ailleurs dans le monde à votre entreprise siège à New York ou partout où vous êtes, vous êtes va créer l'apparence à des sites extérieurs qui vous êtes réellement à New York, même si vous êtes physiquement assez loin. Maintenant, vous l'utilisateur allez savez que vous êtes de toute évidence loin. Mais vous allez aussi sentir parce de ces millisecondes supplémentaires. Cette distance et plus chiffrement qui se passe dans le VPN va ralentir les choses. Donc, il peut ou non être une grande expérience. Mais Hulu et Netflix vont voir vous aussi assis quelque part à New York, comme vous l'avez clairement glanée. Quelle parfaite solution pour cela. Très bien, alors la géographie est une décision. Que pourrions-nous utiliser pour décider comment pour acheminer le trafic à partir de A, B et C 1, 2 et 3, encore une fois, en mettant le chapeau d'ingénierie sur? Cela semble très compliqué. Euh, je ne sais même pas où pour commencer à appliquer celles-ci. Donnez-moi quelque chose qui est plus simple. Quelle est la façon la plus simple de prendre cette décision? AUDIENCE: Le serveur est-il disponible? DAVID MALAN: Le serveur est-il disponible? Donc pas mal. C'est bon. C'est une sorte de nuançage de la charge. Donc, nous allons garder cela dans la catégorie de charge. Si vous êtes disponible, je suis juste va envoyer les données là. Mais cela pourrait se retourner rapidement. Parce que si j'utilise cette logique, et si je demandez toujours 1, êtes-vous, vous êtes sur, êtes-vous, si la réponse est toujours oui, Je vais envoyer 100% du trafic pour lui, 0% à tout le monde. Et à un moment donné, nous allons frapper que le ralentissement ou le site indisponible. Alors, quel est légèrement meilleur que cela, mais encore assez simple et pas presque aussi intelligent que de prendre toutes les ces données supplémentaires en compte? AUDIENCE: Coût par serveur. DAVID MALAN: Coût par serveur. OK, alors laissez-moi toss que dans la catégorie de charge, aussi. Parce que ce que vous trouverez dans une entreprise, too-- que si vous mettre à jour vos serveurs au fil du temps ou acheter plus, vous pourriez ne pas être en mesure d'obtenir exactement les mêmes versions de matériel. Parce qu'il se situe hors de la date. Vous ne pouvez plus acheter. Les prix changent. Donc, vous pourriez avoir des serveurs disparates dans votre cluster, pour ainsi dire. C'est tout à fait bien. Mais le matériel de l'année prochaine pourrait être deux fois plus vite, deux fois plus capables que cette année de. Donc, nous pouvons jeter que dans la catégorie de charge. Cette boucle de rétroaction entre 1, 2 et 3 dans l'équilibreur de charge pourrait certainement le dire, hey, je suis à la capacité de 50%. Mais par ailleurs, je aussi deux fois plus de noyaux. Utilisez ces informations. Même simpler-- et cela va être un thème en informatique. En cas de doute, ou si vous voulez d'un simple solution qui fonctionne généralement bien au fil du temps, ne choisissez pas le même serveur tout le temps, mais choisir-- AUDIENCE: A un hasard? DAVID MALAN: --un serveur aléatoire. Ouais, choisissez l'une ou l'autre. Donc, le hasard est en réalité cet ingrédient très puissant en informatique, et en génie plus généralement, surtout quand vous voulez de faire une simple décision rapide sans compliquer avec tout de ces très intelligent, mais aussi très intelligents, des solutions qui nécessitent d'autant plus d'ingénierie, de tous plus la pensée, lorsque vraiment, pourquoi ne pas que je juste sorte de lancer une pièce, ou trois faces pièce de monnaie dans ce cas, et décider d'aller 1, 2, 3? Cela pourrait se retourner contre probabilistically, mais tout comme les chances de retournement à nouveau la tête et Encore et encore et encore et est encore et encore possible Super reality--, super improbable. Donc, au fil du temps, les chances sont le fait d'envoyer des utilisateurs au hasard 1, 2 et 3 va travailler parfaitement bien. Et cela est une technique généralement connu sous le nom round robin. Ou en fait, ce n'est pas ronde. Ce serait l'approche aléatoire. Et si vous voulez être encore un peu plus simple que cela, round robin serait, première personne va à 1, deuxième personne à 2, troisième personne à 3, quatrième personne à 1. Et celui-ci se trouve le tournoi à la ronde. Vous avez juste sorte de faire le tour dans un cycle. Maintenant, vous devriez être intelligent à ce sujet. Vous ne devez pas envoyer aveuglément à l'utilisateur de numéro du serveur un si ce qui est le cas? Si elle est à la capacité maximale, ou il est juste ne répond plus. Donc, idéalement, vous voulez un peu sorte de boucle de rétroaction. Sinon, vous envoyez juste tous de vos utilisateurs à une impasse. Mais cela peut être pris en compte, aussi. Donc, ne pas apprécier sous la valeur de aléatoire juste, ce qui est assez souvent une solution à ce genre de problèmes. Et nous écrivons round robin. Alors, comment certaines entreprises mettent en œuvre round robin ou aléatoire ou l'une de ces décisions? Eh bien, malheureusement, ils faire des choses comme cela. Laisse-moi ôter une autre capture d'écran rapide. En fait, nous allons faire deux. Je ne sais pas pourquoi nous sommes obtenir tous ces plats. Cela est très étrange. Très bien, vraiment ce que je veulent est une capture d'écran. C'est étrange. D'accord, donc je ne peux usurper cela. Je ne sais pas comment beaucoup plus loin Je veux garder le défilement. Donc, très souvent, vous vous trouverez à une adresse comme www.2.acme.com, peut-être www.3 ou 4 ou 5. Et garder un oeil pour cela. Vous ne le voyez pas souvent. Mais quand vous le faites, il a tendance à type de être plus grand, plus âgés, les entreprises stodgier que faire technologiquement pas vraiment semblent savoir ce qu'ils font. Et vous voyez ce sur les entreprises technologiques parfois, les plus âgés. Alors, que font-ils? Comment sont-ils en œuvre l'équilibrage de charge, serait-il semble? Si vous vous trouvez comme typage utilisateur www.something.com, et tout à coup vous êtes à www.2.something.com, ce qui a leur charge équilibreur probablement fait? AUDIENCE: [Inaudible] DAVID MALAN: Ouais, donc le équilibreur de charge est probablement prendre une décision basée sur l'un des faisant processes-- ces décisions n'a pas vraiment d'importance qui. Mais un peu comme je l'ai dessiné numéros sur la carte ici, les serveurs ne sont pas seulement appelé 1, 2 et 3. Ils sont probablement appelés www1, www2, www3. Et il se trouve que l'intérieur de une requête HTTP est cette fonctionnalité. Et je vais simuler ceci de la manière suivante. Je vais ouvrir ce même onglet réseau de développeurs comme avant tout afin que nous puissions voir ce qui se passe au-dessous du capot. Je vais effacer l'écran. Et je vais aller, nous allons dire http://harvard.edu. Maintenant, pour quelque des raisons d'affaires, Harvard a décidé, comme beaucoup, de nombreux autres sites, d'uniformiser son site Web sur www.harvard.edu pour les deux techniques et des raisons de marketing. Il est juste un peu en vogue d'avoir le www. Donc, le serveur à Harvard a pour rediriger l'utilisateur en quelque sorte, comme je ne cesse de dire, à partir de une URL à l'autre. Comment ça marche? Eh bien, laissez-moi aller de l'avant et appuyez sur Entrée. Et remarquez l'URL en effet rapidement www.harvard.edu changé. Permettez-moi de faire défiler en arrière dans ce histoire et cliquer sur ce debug des informations de diagnostic, si vous voulez. Laissez-moi regarder à ma demande. Voici donc la demande que je fis. Et remarquez qu'il est compatible avec le genre de demande que je fis de Facebook avant. Mais remarquez la réponse. Ce qui est différent dans la réponse cette fois-ci? AUDIENCE: [Inaudible] DAVID MALAN: Oui, il est donc pas un 200 OK. Il est pas un 404 Not Found. Il est un 301 Moved Permanently, qui est une sorte de drôle de façon de dire, Harvard a fait monter et déplacé ailleurs pour www.harvard.edu. Les 301 signifie que ceci est une redirection. Et à l'endroit où l'utilisateur doit apparemment être redirigé? Il y a une friandise supplémentaire de informations à l'intérieur de cette enveloppe. Et chacune de ces lignes va maintenant commencer à appeler un en-tête HTTP. En-tête est juste une valeur de clé pair-- quelque chose du côlon quelque chose. Il est un élément d'information. Où devrait le nouveau emplacement apparemment être? Notez la dernière ligne parmi tous les en-têtes. AUDIENCE: [Inaudible] DAVID MALAN: Ouais, donc il n'y a Information additionnelle. La première ligne que je l'ai souligné dit 301 Moved Permanently. Eh bien, où est-il déplacé? Le dernier line-- et ils ne le font pas doivent être dans cet ordre. Il peut être aléatoire. signifie Lieu côlon, hey navigateur, allez à cette adresse à la place. Donc, les navigateurs comprennent redirections HTTP. Et cela est un très, très façon courante de rebondir l'utilisateur d'un endroit à un autre. Par exemple, si vous avez déjà essayé de visiter un site Web que vous n'êtes pas connecté à, vous pourriez soudainement trouver vous-même à une nouvelle URL étant tout à fait vous êtes invité à vous connecter. Comment ça marche? Le serveur est probablement l'envoi d'un 301. Il y a aussi d'autres chiffres, comme 302, quelque peu différente dans le sens, que vous envoyez à une autre URL. Et puis le serveur, une fois que vous êtes connecté, vous enverra à l'endroit où vous avez réellement l'intention. Alors qu'est-ce, alors, sont mal sites d'ingénierie faire? Lorsque vous visitez www.acme.com, et ils ont juste arriver ont nommé leurs serveurs www1, www2, www3, et ainsi de suite, ils sont très simply-- qui est juste, mais très sorte de foolishly-- vous rediriger vers un serveur effectivement nommé différemment. Et cela fonctionne parfaitement bien. Il est agréable et facile. Nous avons vu comment il serait fait sous le capot dans l'enveloppe virtuelle. Mais pourquoi est-ce sans doute une mauvaise décision d'ingénierie? Et pourquoi suis-je sorte de condescendance vers ce génie particulier approche? Raisonner pourquoi cela est mauvais. Ben? AUDIENCE: [Inaudible] DAVID MALAN: Chaque serveur devra avoir un duplicata du site. Je suis OK avec ça. Et en fait, voilà ce que je suis en supposant que pour toute cette histoire, car si nous wanted-- bien en fait, sauf pour Dan plus tôt suggestion, où si vous avez différents serveurs faire des choses différentes, alors peut-être qu'ils pourraient effectivement être faisant fonctionnellement différentes choses. Mais même alors, à un moment donné, votre base de données va se faire surchargé. Votre serveur actif statique va se surchargé. Donc, à un moment donné, nous sommes retour à cette histoire, où nous besoin de plusieurs exemplaires de la même chose. Donc, je suis OK avec ça. AUDIENCE: [Inaudible] DAVID MALAN: OK, donc certaines pages pourrait être disproportionnée populaire. Et ainsi se fixer sur une seule adresse est pas nécessairement la meilleure chose. [INAUDIBLE]? AUDIENCE: [Inaudible] DAVID MALAN: Que voulez-vous dire par là? AUDIENCE: [Inaudible] DAVID MALAN: Oui, exactement. Donc, vous ne voulez pas vous have-- nécessairement certainement ne veulent pas que vos utilisateurs tapant manuellement dans www1 ou www2. Du point de vue de l'image de marque, il regarde juste un peu ridicule. Si vous voulez juste une sorte de propre, l'expérience élégante, ayant ce genre de hasard URL numérotées est vraiment pas bon. Parce qu'alors, les utilisateurs sont sûrement va copier et coller dans des courriels ou des messages instantanés. Maintenant, ils se propageant. Maintenant, vous êtes sorte de confondre votre moins public technique, qui pense votre adresse web est www2.something.com. Il n'y a pas de sémantique impérieuses à cela. Il se trouve être un sous-jacent détails techniques que vous avez numérotée vos serveurs de cette façon. Et pire encore, si, par exemple, peut-être autour du temps de Noël quand entreprise est vraiment en plein essor, vous avez www1 par www99, mais en Janvier et Février et en avant, vous éteignez la moitié des personnes donc vous avez seulement www1 par www50? Quelle est l'implication maintenant que décision d'affaires très raisonnable? AUDIENCE: [Inaudible] DAVID MALAN: Vous devez gérer l'ensemble de ceux qui sont encore. AUDIENCE: [Inaudible] DAVID MALAN: Exactement. C'est le genre de la capture là. Si vos clients ont l'habitude de les choses de bookmarking, les envoyer par courriel, juste sauvegarder l'adresse quelque part, ou si elle est juste dans leur auto compléter dans leur navigateur afin qu'ils soient pas vraiment intentionnellement taper, il est juste passe, ils pourraient, pendant 11 mois de l'année efficacement, atteindre une impasse. Et seul le plus astucieux de utilisateurs va réaliser, peut-être que je devrais manuellement supprimer ce numéro. Je veux dire, il est tout simplement pas qui va se passer avec de nombreux utilisateurs, si mauvais pour les affaires, mauvais génie de la mise en œuvre sage. Donc, heureusement, il est même pas nécessaire. Il se trouve que ce équilibreurs de charge peuvent faire est au lieu de dire, quand A fait un request-- hey A, aller à 1. En d'autres termes, au lieu l'envoi de cette redirection de telle sorte que la première étape dans cette processus est le rendez-vous ici, il est alors dit d'aller ailleurs. Et l'étape trois est, il va ailleurs. Vous pouvez au lieu de continuer à itinéraire, continuer à utiliser ce terme, toutes les données de A grâce à l'équilibreur de charge afin qu'il jamais contacts 1, 2, ou 3 directement. Tout le trafic n'obtient "routés" par la charge elle-même Balancer. Et maintenant nous sommes en quelque sorte brouillant délibérément les lignes entre ces différents dispositifs. Un équilibreur de charge peut acheminer les données. Il est juste une fonction qu'il a. Donc, un équilibreur de charge, aussi, il est un morceau de logiciel, vraiment. Et un routeur est un morceau de logiciel. Et vous pouvez absolument avoir deux morceaux de logiciel à l'intérieur d'un ordinateur physique pour une charge équilibreur peut faire ces choses multiples. Donc, il y a une autre façon Pour ce faire, ce qui fait remonte en quelque sorte des premiers principes de DNS, dont nous avons parlé avant la pause. DNS était Domain Name System. Rappelez-vous que vous pouvez demander à un serveur DNS, ce qui est l'adresse IP de google.com, facebook.com? Et nous pouvons le faire. Un outil que nous n'avons pas utilisé plus tôt est celui qui est tout aussi accessible, appelé nslookup, pour consultation le nom du serveur. Et je vais juste taper facebook.com. Et je vois que la propriété intellectuelle de Facebook adresse est apparemment cela. Laissez-moi aller de l'avant et copier que, aller à un navigateur, et aller à http: // et que l'adresse IP et appuyez sur Entrée. Et bien sûr, il semble fonctionner. Il travaille maintenant en arrière, ce qui était à l'intérieur de l'enveloppe virtuelle que Facebook a répondu avec quand Je me suis rendu que adresse IP directement? Parce avis, où suis-je maintenant? Où suis-je maintenant, l'adresse? AUDIENCE: [Inaudible] DAVID MALAN: A la version sécurisée, et au www.facebook.com. Donc, il est même pas juste l'adresse IP sécurisée. Facebook a pris sur lui-même à-dire, cela est ridicule. On ne va pas pour vous maintenir à ce laid URL à la recherche qui est numérique. Nous allons vous envoyer un HTTP rediriger au moyen de cette même tête que nous avons vu before-- emplacement du côlon quelque chose. Et cela signifie simplement que sous le capot est encore cette adresse IP. Chaque ordinateur sur Internet a une adresse IP, il semblerait. Mais vous ne devez pas nécessairement à exposer que pour l'utilisateur. Et tout comme dans la journée, il y était 1-800-COLLECT, 1-800-C-O-L-L-E-C-T, aux États-Unis, était une façon de faire de collecte appels via un téléphone très facilement mémorable numéro ou 1-800-MATELAS pour acheter un lit, et mnémoniques semblables que vous voient même au téléphone sorte de sorte de encore, que les lettres correspondent aux numéros. Maintenant, pourquoi est-ce? Eh bien, il est beaucoup plus facile à mémoriser 1-800-MATELAS ou 1-800-COLLECT place 1-800 quelque chose quelque chose quelque chose quelque chose de quelque chose de quelque chose quelque chose, où chaque de celles-ci est un chiffre. De même, le monde a appris rapidement que nous ne devrions pas ont des gens mémorisent les adresses IP. Ce serait stupide. Nous allons utiliser des noms à la place. Et voilà pourquoi DNS est né. Très bien, donc avec ce que dit, en termes d'équilibrage de charge, nous allons essayer yahoo.com. Eh bien, c'est intéressant. Yahoo semble revenir trois adresses IP. Donc en déduire, si vous pouviez, ce qui est une autre façon que nous pourrions mettre en œuvre cette notion d'équilibrage de charge peut-être sans même utiliser un physique dispositif, ce nouveau dispositif physique? En d'autres mots, je peux enlever la le financement que vous avez pour l'équilibreur de charge et vous dire d'utiliser une partie existante morceau de matériel à mettre en œuvre cette notion d'équilibrage de charge? Et le spoiler est, oui, mais quoi, ou comment? Qu'est-ce que Yahoo peut-être ici? Kareem? OK, Chris? AUDIENCE: [Inaudible] DAVID MALAN: Ouais, trois de ces travaux. Donc, le hasard, round robin, location-- vous pouvez juste tirer parti d'une pièce du puzzle existant dont nous avons parlé plus tôt du DNS système et disent simplement, lorsque le premier utilisateur du jour demande yahoo.com, leur donner la première adresse IP, comme celle qui se termine dans 45 là-haut. Et la prochaine fois que l'utilisateur demande l'adresse IP de yahoo.com de quelque part dans le monde, leur donner la deuxième IP, puis le troisième IP, le premier IP, puis la seconde. Ou être intelligent à ce sujet et de le faire graphiquement. Ou faites-le de façon aléatoire et non pas seulement faire il tournoi à la ronde de cette façon. Et dans ce cas, on n'a même pas besoin d'introduire ce noir box dans notre image. On n'a pas besoin d'un nouvel appareil. Nous sommes tout simplement dire les ordinateurs pour aller aux serveurs directement, efficace, mais pas par le biais de leur nom. Ils ne doivent jamais connaître le nom. Ils sont juste d'être dit que yahoo.com cartes à l'une de ces adresses IP. Donc, il envoie la même requête exacte. Mais à l'extérieur du l'enveloppe, il suffit met l'IP qu'il a été informé de. Et de cette façon, aussi, pourrait nous chargeons un équilibre entre les demandes par le fait d'envoyer l'enveloppe à un différent des propres serveurs de Yahoo? Et si nous continuons à creuser, nous verrons probablement d'autres entreprises de plus. CNN a deux exposés publiquement. Bien en fait, si nous le faisons à nouveau et again-- cnn.com-- vous pouvez voir ils changent l'ordre, en fait. Alors, quel est le mécanisme CNN en utilisant, apparemment? AUDIENCE: Random. DAVID MALAN: Eh bien, il pourrait être aléatoire, même si elle semble être le vélo avant et en arrière. Donc, il est probablement ronde où ils sont juste de commutation de l'ordre afin que je vais probablement prendre la première. Mon ordinateur prendra la première à chaque fois. Voilà donc l'équilibrage de charge. Et cela nous permet, en fin de compte, pour cartographier les données ou les demandes de carte, sur plusieurs serveurs. Alors, quel genre de problèmes existent encore aujourd'hui? Il se sent comme nous venons vraiment résolu un bon problème. Nous avons obtenu les utilisateurs vers des serveurs différents. Mais-- oh, et Chris, a fait vous avez une question avant? AUDIENCE: [Inaudible] DAVID MALAN: dépend totalement. Alors qu'est-ce qui se passe ici? Et nous pouvons voir cela. Essayons donc de Yahoo. En fait, nous allons aller à Facebook. Parce que nous savons que l'on travaille. Donc, je vais copier cette adresse IP à nouveau. Je vais fermer tous ces onglets. Je vais ouvert onglet spécial de réseau ici. Et je vais rendre visite à seulement http: //. Et maintenant, je vais appuyez sur Entrée. Et nous allons voir ce qui est arrivé. Si je regarde cette demande, l'avis que my-- Facebook est un mauvais exemple. Parce qu'ils ont une technique super chic qui cache ce détail de nous. Permettez-moi d'utiliser Yahoo instead-- http: // que la propriété intellectuelle. Ouvrons notre réseau onglet, préserver journal. Et on y va, entrez. Ca c'est drôle. OK, voici donc le fameux 404 message. Ce qui est drôle ici est qu'ils ne sera probablement jamais en arrière. Parce qu'il n'y a probablement pas quelque chose de mal en soi. Ils ont juste délibérément décidé de ne pas soutenir la forme numérique de leur adresse. Donc, ce que nous sommes en train de voir dans la onglet Réseau, si je tire ce ici, est, comme je le dis, le célèbre 404, où si je regarde les en-têtes de réponse, ce que je suis ici-- 404 Not Found. Essayons donc un autre. Voyons voir si CNN coopère avec nous. Je vais prendre l'une des adresses IP de CNN, effacer ce, http, dah, dah, dah, dah. Donc, en réponse à Chris de question, que l'on a travaillé. Et allons à en-têtes de réponse. En fait non, tout droit, je suis du mal à trouver un exemple de travail. Donc, CNN a décidé, nous allons vous laisser quel que soit l'adresse que vous avez réellement visiter, les questions d'image de marque de côté. Mais ce qui ne se produirait pas, si nous avons pu le voir dans le cas de Facebook, est que nous obtiendrions un 301 Moved En permanence, le plus probable, à l'intérieur duquel est Emplacement: https: //www.facebook.com. Et les chances sont www.facebook.com est un alias pour le même serveur exact que nous venons est allé à. Donc, il est un peu contre-productif. Nous sommes littéralement visiter le serveur. Le serveur est ensuite nous dit, aller. Allez à cette autre adresse. Mais nous venons donc arriver à être revenir à ce même serveur. Mais sans doute nous restons maintenant sur ce serveur sans ce va-et-vient. Parce que maintenant, nous utilisons le nommé version du site, et non le numérique. Bonne question. OK, donc si nous assume-- maintenant nous avoir résolu l'équilibrage de charge. Nous avons maintenant un mécanisme, que ce soit par l'intermédiaire de DNS, que ce soit par l'intermédiaire de cette boîte noire, que ce soit il utilise une de ces techniques. Nous pouvons prendre la demande d'un utilisateur et déterminer à quel serveur, 1, 2 ou 3, de lui envoyer. Ce qui commence à briser sur notre site? En d'autres termes, nous avons construit une entreprise qui était auparavant sur un seul serveur. Maintenant que les affaires en cours d'exécution sur plusieurs serveurs. Quels types d'hypothèses, quels types de décisions de conception, pourrait maintenant briser? Ceci est moins évident. Mais nous allons voir si nous ne pouvons pas mettre notre le doigt sur une partie du problème que nous avons créé pour nous-mêmes. Encore une fois, il est un peu comme la tenue la fuite vers le bas dans le tuyau. Et maintenant une nouvelle question a surgi ici. AUDIENCE: [Inaudible] DAVID MALAN: OK, donc nous devons maintenir la croissance de notre espace disque. Je suis OK avec ça en ce moment. Parce que je pense que je peux échelle horizontale. Comme si je suis en bas, je vais prendre un quatrième serveur, peut-être une cinquième serveur, puis augmenter notre capacité par un autre 30% ou 50% ou autres joyeusetés. Donc, je suis OK avec ça, au moins pour l'instant. AUDIENCE: [Inaudible] DAVID MALAN: OK, qui est un bon point. Supposons donc que les serveurs ne sont pas identiques. Et le service à la clientèle ou l'équivalent électronique est d'obtenir un certain message d'un utilisateur dire, cela ne fonctionne pas bien. Il est très possible, parfois, que peut-être un ou plusieurs serveurs agit pour un peu de travers, mais pas les autres, ce qui peut certainement rendre plus difficile à chasser en bas de la question. Vous pourriez avoir à consulter plusieurs endroits. C'est la manifestation d'un autre type de bug, qui est ce que vous devriez probablement ont conçu votre infrastructure afin que tout est vraiment identique. Mais elle révèle un nouveau problème que nous ne disposions pas auparavant. Quoi d'autre? AUDIENCE: [Inaudible] DAVID MALAN: Ouais, il n'y a plus de complexité. Il y a physiquement plusieurs fils. Il y a un autre appareil. En fait, je l'ai présenté un élément fondamental concept et un problème fondamental ici connu comme un seul point de l'échec, qui, même si vous ne l'avez jamais entendu l'expression, vous pouvez probablement maintenant travailler en arrière et comprendre. Qu'est-ce que cela signifie que j'ai un seul point de défaillance dans mon architecture? Et par l'architecture, je viens dire la topologie de celui-ci. AUDIENCE: [Inaudible] DAVID MALAN: Oui, si l'équilibreur de charge descend? J'ai inséré cet homme dont le milieu but dans la vie est de résoudre un problème. Mais je l'ai présenté un nouveau problème. Une nouvelle fuite a jailli dans le tuyau. Parce que maintenant, si l'équilibreur de charge meurt ou pauses ou misfunctions, maintenant je perds l'accès à tous les trois de mes serveurs. Et avant, je ne l'ai pas avoir cette intermédiaire. Et cela est un problème nouveau, sans doute. Nous y reviendrons comment nous pourrions résoudre ce problème. AUDIENCE: [Inaudible] DAVID MALAN: Ce serait une approche. Ouais, et donc cela va être assez le trou du rat nous commençons à descendre. Mais revenons à que, dans un instant. Quels sont les autres problèmes que nous avons créé? Donc, Dan mentionné base de données avant. Et même si vous n'êtes pas trop familier techniquement, une base de données est juste un serveur où la modification des données sont généralement stockées, peut-être un ordre que quelqu'un a placé, votre profil d'utilisateur, votre nom, votre adresse e-mail, ce qui pourrait être entré ou modifié au fil du temps. Auparavant, ma base de données était sur le même serveur que mon serveur web. Parce que je viens d'avoir un compte d'hébergement web. Tout était tout au même endroit. Où dois-je mettre ma base de données maintenant, sur le serveur 1, 2 ou 3? AUDIENCE: 4. DAVID MALAN: 4, OK, tout à droite, alors allons-y. Donc, je vais mettre mon database-- et nous allons commencer à étiqueter ces www, www, www. Et je vais dire, ceci est le numéro quatre. Et je vais dire db pour la base de données. OK, I like this. Quelle ligne dois-je vraisemblablement être dessin ici? AUDIENCE: [Inaudible] DAVID MALAN: Ouais, donc le code, comme nous le verrons demain, est probablement le même sur les trois serveurs. Mais il a maintenant besoin de se connecter à un pas base de données en cours d'exécution au niveau local, mais ailleurs. Et ça va. Nous pouvons simplement donner la base de données a nom, comme nous, ou un nombre. Et que tout fonctionne bien. Mais qu'avons-nous fait? Nous avons mis à l'échelle horizontalement en ayant trois serveurs au lieu d'un, qui est bon. Parce que maintenant nous pouvons gérer trois fois plus de charge. Et mieux encore, si un ou deux de ces serveurs tombe en panne, mon entreprise peut continuer à fonctionner. Parce que j'ai encore un, même si je suis sorte de boitant performance sage. Mais ce nouveau problème ai-je introduite par le déplacement de la base de données à ce serveur distinct au lieu du 1, 2 et 3? AUDIENCE: [Inaudible] DAVID MALAN: Ouais, donc maintenant je dois un autre point de défaillance unique. Si ma base de données meurt ou doit être mis à jour, ou autre chose, maintenant sûr, mon site est en ligne. Et je peux servir statique, contenu immuable. Mais je ne peux pas laisser les utilisateurs se connectent ou changement quoi que ce soit ou pour quoi que ce soit, pire encore. Parce que si 4 est déconnecté, puis 1, 2 et 3 ne peut vraiment pas parler à elle par définition. OK alors oui, et si cela est pourquoi Je hésite à tirer cette. Donc, revenons à cela. Je ne veux pas vous faire pousser au large. Mais l'image est très va rapidement pour obtenir stressant. Parce que vous avez besoin pour commencer ayant deux de tout. En fait, si vous avez déjà vu la film contacter il y a quelques années avec Jodie Foster-- pas? OK, donc pour les deux nous qui ont vu Contact, il y a une relation là où ils essentiellement acheté deux de quelque chose au lieu d'une, bien au double du prix. Donc, il était en quelque sorte un ludique commenter dans le film. Il est une sorte de relation à cela. Nous pourrions absolument le faire. Et vous avez juste coût nous deux fois plus d'argent. Mais nous reviendrons à cela. Donc, nous avons résolu cela. Donc, vous savez quoi? Cela ressemble à une pente glissante. Je ne veux pas faire face à avoir d'avoir une base de données en double. Il est trop d'argent. Vous savez quoi? Je veux avoir ma base de données tout comme dans la version d'un où chaque serveur dispose d' sa propre base de données locale. Donc, je vais juste dessiner db sur chacun de ceux-ci. Alors maintenant, chaque serveur Web est identique dans la mesure où comme il a le même code, le même actifs statiques, mêmes images et du texte et ainsi de suite. Et chacun a sa propre base de données. Je fixe le seul point du problème de l'échec. Maintenant, j'ai une base de données. Quel que soit deux ou l'un de ceux-ci les choses meurent, il y a toujours une gauche. Mais ce nouveau problème, j'ai créé que la solution de Dan évité? AUDIENCE: [Inaudible] DAVID MALAN: Oui, je avoir à les synchroniser, à droite? Parce que soit je dois synchroniser qui va where-- en d'autres termes, si Alice visite mon site, et elle est arrivé pour obtenir au hasard ou rond robin ou que ce soit, à un seul numéro de serveur, par la suite, je dois toujours l'envoyer au serveur 1. Pourquoi? Parce que si je lui envoie au serveur 2, il va à regarder comme si elle ne s'y trouve pas. Je ne vais pas avoir son historique de commandes. Je ne vais pas avoir son profil il. Et cela se sent comme il est d'inviter des problèmes. Et quand Bob visite, je doivent lui envoyer toujours le même serveur, 2 ou selon une, et Charlie à un troisième, et de manière cohérente. Ce n'est pas déraisonnable, cependant. C'est appelé le partitionnement de votre base de données. Et en fait, ce fut ce que Facebook a fait dès le début. Si vous avez suivi l'histoire de Facebook, il a commencé ici au campus comme www.thefacebook.com. Ensuite, il a évolué une fois Mark a commencé se propager dans d'autres campus être harvard.thefacebook.com et mit.thefacebook.com, et probablement bu.thefacebook.com, et analogues. Et ce fut à cause dès le début, je ne pense pas vous pourriez avoir des amis à travers les campus. Mais ça va. Parce que quelqu'un de Harvard fit envoyé à ce serveur. Toute personne de BU fut expulsé à ce serveur. Toute personne du MIT fut expulsé à ce Server-- en théorie. Je ne sais pas tout à fait tous les les détails sous-jacents de mise en œuvre. Mais il doute partagé par les gens leur campus, où leur réseau était. Donc, ce qui est bon jusqu'à ce que le point où vous avez besoin de deux serveurs pour Harvard, ou trois serveurs pour Harvard. Et puis que la simplicité sorte de tombe en panne. Mais c'est une approche raisonnable. Envoyons toujours Alice au même endroit, toujours envoyer Bob au même endroit. Mais ce qui se passe si Alice serveur est déconnecté? Bob et Charlie peuvent encore acheter choses et se connectent au site. Mais Alice ne peut pas. Donc, vous avez perdu un tiers de votre base d'utilisateurs. Peut-être que mieux que 100%? Mais peut-être que ce serait bien si nous pouvions soutenir encore 100% de nos utilisateurs même si un tiers de notre serveurs se déconnecte. Donc, nous pourrions synchroniser quoi? Non les utilisateurs, en soi, mais le base de données sur tous ces serveurs. Alors maintenant, nous sorte de besoin d'une certaine type d'interconnexion ici afin que les serveurs eux-mêmes peut sync-- pas déraisonnable. Et en fait, cette technologie existe. Dans le monde des bases de données, il y a la notion de bases de données maître-esclave, ou primaire-secondaire, où, parmi les caractéristiques est non seulement pour stocker des données et de répondre avec des données, mais aussi simplement en permanence synchroniser les uns avec les autres. Donc, chaque fois que vous écrivez ou enregistrez quelque chose à cette base de données, il obtient immédiatement "répliqué" les autres bases de données aussi bien. Et chaque fois que vous avez lu de lui, il n'a pas d'importance où vous êtes. Parce que si en théorie ils ont tous synchronisés, vous êtes va obtenir le même point de vue des données. Donc, cela semble parfait. Il doit y avoir un hic. Que pourrait être la capture? AUDIENCE: [Inaudible] DAVID Malan: Ouais, donc trois fois tant de choses pourraient aller mal. C'est une réalité. Il serait peut-être de même dans l'esprit. Mais quelqu'un a besoin de configurer ceux-ci. Il y a une probabilité plus élevée que quelque chose va mal tourner. Juste combinatoirement vous avez plus de choses sujettes à des erreurs. Qu'est-ce que le reste est mauvais potentiellement? AUDIENCE: [Inaudible] DAVID MALAN: Ouais, donc la synchronisation peut être mauvais. Même si vous savez peut-être à partir de sauvegardes et autres, si vous aveuglément faites sauvegardes, si quelque chose ne aller mal sur une base de données? Vous supprimez quelque chose que vous ne devriez pas. Vous avez immédiatement répliqué ce problème partout ailleurs. Donc, Victoria était sauvegardes talking-- serait une bonne chose ici. Et donc nous allons revenir à cela. Et pour être clair, nous parlons pas sur les sauvegardes ici en soi. Nous parlons de vrai réplication ou la synchronisation entre les serveurs. Ils sont tous en direct. Ils ne sont pas destinés à être utilisé pour les sauvegardes. AUDIENCE: [Inaudible] DAVID MALAN: Qu'est-ce que? AUDIENCE: Higher-- DAVID MALAN: coût supérieur. Nous avons triplé le coût pour que, bien au moins en termes du matériel. Parce qu'une base de données est juste un morceau de logiciel. Et un serveur Web est un morceau de logiciel. Il est probablement libre si nous utilisons un certain nombre de choses ouvertes source. Mais si nous utilisons quelque chose comme Oracle, nous payons plus d'argent par Oracle licences ou Microsoft pour l'accès. Il doit y avoir un autre crochet ici. Il ne peut pas être aussi simple. Donc, à votre point, je pense qu'il était Kareem, pour la géographie ou pas l'heure, à, Roman, était-ce, pour geography-- supposer que nous sommes d'être intelligent à ce sujet, et nous mettons un de nos serveurs, et tourner nos bases de données, aux États-Unis, et une autre en Europe, un autre en Amérique du Sud, un autre en Afrique, une autre en Asie, partout où nous pourrait vouloir dans le monde entier. Nous savons déjà de notre trace routes que le point A et le point B, si elles sont plus espacées, vont prendre plus de temps. Et si certains d'entre vous ont utilisé outils, comme Facebook ou Twitter ou tout de ces sites ces jours sont en constante évolution en raison de l'utilisateur les données créées, parfois, si vous frapper Recharger ou ouvrir la même page dans un autre navigateur, vous voyez différentes versions, presque. Vous pouvez voir le statut de quelqu'un mettre à jour ici, mais pas ici, puis vous rechargez, puis il apparaît, et vous rechargez à nouveau, et elle disparaît. En d'autres termes, garder un oeil pour cela, au moins si vous utilisez sociale la mise en réseau en particulier. Encore une fois, tout simplement parce que le les données changent si rapidement, parfois les serveurs ne reçoivent pas synchronisés. Et peut-être il est super petite fenêtre. Mais 200 millisecondes, peut-être plus encore que that-- il est va prendre une certaine quantité non nulle de temps pour ces bases de données à synchroniser. Et nous ne sommes pas seulement parler d'une demande. Si une entreprise a des milliers de des utilisateurs en utilisant simultanément, ils pourraient tampon. En d'autres termes, il pourrait une file d'attente ou d'une ligne d'attente avant que tous ceux qui base de données les requêtes peuvent se synchroniser. Alors peut-être qu'il est en fait quelques secondes. Et en effet, cela est vrai, je pense que même à ce jour avec Facebook, par lequel lorsqu'ils synchronisent de Côte Est à la côte Ouest, il a un non-trivial retard de propagation, pour ainsi dire, que vous venez de genre d'avoir à tolérer. Et il est donc pas tant un bug car il est une réalité que vos utilisateurs risquent de ne pas voir les données correctes pour au moins quelques secondes. Je vois cela sur Twitter beaucoup en fait, où parfois je vais tweeter dans une seule fenêtre, ouvrir une autre à puis le voir pour confirmer qu'il fait monta, et il est pas encore là. Et je dois sorte de recharger, recharger, reload-- oh, il est là. Et ce n'est pas parce qu'il n'a pas été enregistré. Il a tout simplement pas propagé vers d'autres serveurs. Donc ce compromis, too-- vous vraiment voulez vous exposer au risque que si l'utilisateur va à leur ordre l'histoire, il est pas vraiment encore là? Je vois cela sur certaines banques. Il me gêne toujours quand, eh bien, pour un, vous ne pouvez aller comme six mois en arrière dans vos relevés bancaires dans certaines banques, même si, en théorie, ils devraient être en mesure d'avoir tout en ligne. Ils prennent tout simplement déconnecté de choses parfois. Parfois, too-- ce site est-il? Il y a One-- oh, il est GoDaddy, je pense. GoDaddy, lorsque vous consultez l'achat d'un nom de domaine ou quelque chose, ils vont souvent vous donner un lien vers votre reçu. Et si vous cliquez sur ce lien à droite loin, souvent ne fonctionne pas. Il dit juste, impasse, rien ici. Et c'est aussi à cause de ces retards de propagation. Parce que, pour une raison quelconque, ils prennent un peu de temps pour générer ce fait. Donc, cela est un peu comme vous voulez arracher les cheveux à un moment donné. Parce que tout ce que vous essayez de faire est de résoudre un problème simple. Et nous continuons à créer de nouvelles problèmes pour nous-mêmes. Donc, nous allons voir si nous peut sorte de défaire cela. Il se trouve que la combinaison bases de données sur l'ensemble de vos serveurs Web est pas vraiment la meilleure pratique. En règle générale, ce qu'est un ingénieur ferait, ou architecte des systèmes, serait d'avoir différents niveaux de serveurs. Et juste pour l'amour de l'espace, je vais attirer leur base de données ici. Nous pourrions avoir la base de données et numéro de serveur quatre ici qui fait avoir des liens avec chacun de ces serveurs ici. Donc, cela pourrait être notre front fin de niveau, car les gens diraient. Et ce serait notre arrière niveau. Et cela signifie juste que ceux-ci font face à l'utilisateur. Et les bases de données ne sont pas confrontés à l'utilisateur. Aucun utilisateur ne peut directement accéder à la base de données. Donc, nous allons maintenant peut-être descendre l'itinéraire proposé Victoria. Ceci est un point de défaillance unique. Cela me rend mal à l'aise. Alors, quel est peut-être le solution la plus évidente? AUDIENCE: [Inaudible] DAVID MALAN: Désolé, dire encore une fois. AUDIENCE: [Inaudible] DAVID MALAN: serveur non-production. Que voulez-vous dire? AUDIENCE: [Inaudible] DAVID MALAN: Oh, OK, donc les sauvegardes. OK, alors nous pourrions le faire, certainement. Et en fait cela est très souvent fait. Cela pourrait être le numéro cinq de base de données. Mais ce ne connecté au numéro quatre. Et vous pourriez appeler un secours. Ces deux bases de données peuvent être configurées simplement synchroniser en permanence l'un l'autre. Et si cette machine meurt, pour quel que soit stupide reason-- le disque dur meurt, quelqu'un trébuche sur le cordon, certains logiciels sont défectueux et les blocages de la machine ou crashes-- vous pourriez avoir un homme littéralement débranchez celui-ci de la paroi et au lieu de brancher celui-ci dans. Et puis au sein de, disons, un quelques minutes, peut-être une demi-heure, vous êtes de retour en ligne. Il est pas génial, mais il est aussi pas horrible. Et vous ne devez pas vous inquiéter sur les problèmes de synchronisation. Parce que tout est déjà là. Parce que vous avez eu une parfaite sauvegarde prêt à aller. Vous pourriez être un peu colombophile à ce sujet, comme certains le font souvent, où vous pourrait avoir le numéro quatre de base de données ici, Numéro de base de données de cinq ici, qui parlent les uns aux autres. Mais vous avez aussi ce sorte de arrangement-- et délibérément semble désordonné, parce qu'il est-- où tout le serveurs frontaux peuvent parler à tous les serveurs back-end. Et donc si cette base de données ne répondre, ces serveurs frontaux ont d'avoir la programmation le code en eux qui dit, si vous ne recevez pas un connexion à cette base de données, primaire commence immédiatement parler au secondaire. Mais cela pousse maintenant la complexité du code. Et maintenant vos développeurs, votre logiciel les développeurs, doivent savoir à ce sujet. Et vous êtes sorte de lier le code qui vous écrivez à votre extrémité arrière réelle les détails de mise en œuvre, ce qui le rend plus difficile, en particulier dans un plus grand entreprise ou d'un plus grand site web, où vous ne le faites pas nécessairement veulent que les programmeurs aient de savoir comment la base de données Les ingénieurs font leur travail. Vous voudrez peut-être garder ces rôles sorte de fonctionnellement distincte de sorte qu'il ya cette couche de abstraction entre les deux. Alors, comment pouvons-nous résoudre ce problème? Eh bien, nous sorte de résolu ce problème une fois avant. Pourquoi ne pas mettre l'un des ces choses ici où il parle à son tour numéro quatre et cinq, tous les serveurs Web frontaux parler à cet intermédiaire, et intermédiaire dans les itinéraires de transformer leurs données? En fait, ce qui pourrait être un bon nom pour cette chose? AUDIENCE: [Inaudible] DAVID MALAN: OK, gestionnaire de base de données. Mais ce qui pourrait être un terme que nous pourrions réutiliser pour cet appareil? Nous équilibrant. Ouais, donc en fait, je suis pas juste ici. Donc, un équilibreur de charge impliquerait que nous aller et venir ici, qui ne doivent pas être effectivement le cas. Donc, il y a quelques façons que nous pourrions faire cela. Si cela est en fait un dispositif d'équilibrage de charge, le histoire est exactement le même que précédemment. Certaines demandes vont à 4. Certains d'entre eux vont à 5. Et ce qui est bon. Parce que maintenant nous pouvons gérer deux fois plus de débit. Mais cette connexion ici est super important. Ils doivent rester en permanence synchronisé et nous espérons ne sont pas géographiquement trop éloignés pour que la synchronisation est essentiellement instantané. Sinon, nous pourrions avoir un problème. Donc, ce n'est pas mauvais. Mais encore une fois, nous avons introduit un nouveau problème. Quel est le problème que je viens recréé? Point de défaillance unique. Alors, quelle est la solution à cela? Alors que de Victoria aime dépenser de l'argent, nous pouvons prendre ce gars et faire. Et je vais juste déplacer ici assez de place. Et ça va être un peu désordonné. Je vais garder les lignes de dessin. Supposons que toutes ces lignes vont à la fois? Une technique très courante serait ici à utiliser une technique appelée rythme cardiaque dans lequel chacun de ces dispositifs, équilibreurs de charge gauche et droite, ou tout ce que nous voulons les appeler, est constamment en disant: Je suis vivant, Je suis vivant, je suis vivant, je suis vivant. L'un d'eux par défaut, agit en tant que primaire. Donc, tout le trafic est acheminé par l'intermédiaire l'une sur la gauche, par exemple, par défaut, de façon arbitraire. Mais dès que le gars sur la droite ne plus entendre le gars gauche, l'un sur la droite est programmée pour rechercher automatiquement, par exemple, prendre en charge l'adresse IP de l'une à gauche, et donc devenir le primaire, et peut-être envoyer un courriel ou un message texte aux humains à dire, hey, primaire gauche est déconnecté. Je vais devenir primaire pour l'instant. Donc, vice-président devient président, pour ainsi dire. Et quelqu'un doit aller sauver le président, si vous voulez. Parce que nous avons maintenant un temporaire point de défaillance unique. Donc aussi compliqué ou stressant cela peut sembler commencer à être, voici comment résoudre ces problèmes. Vous faites jeter de l'argent à elle. Vous jetez le matériel à elle. Mais malheureusement, vous ajouter de la complexité pour elle. Mais le résultat, en fin de compte, est que vous avez beaucoup plus, en théorie, architecture robuste. Il est pas encore parfait. Parce que même quand nous have-- nous pourrions pas un point de défaillance unique. Nous avons maintenant deux points de défaillance. Mais si deux choses vont mal, qui ne pouvait absolument, nous allons encore être déconnecté. Et donc très commun dans le l'industrie est de décrire votre temps en termes de neuf. Et en quelque sorte le but aspirer à 99,999% est du temps, votre site est en ligne. Ou mieux encore, ajouter un quelques nines à cela. Malheureusement, ceux-ci nines sont très chers. Et nous allons effectivement ce faire sortir. Donc, si j'ouvre mon grand calculateur à nouveau, 365 jours par an, 24 heures par jour, 60 minutes à une heure, et 60 secondes dans une minute, c'est combien de secondes il y a dans un an si je l'ai fait correctement. Donc, si nous fois ce par 0,99999, c'est combien de temps nous voulons aspirer. Cela signifie donc que nous devrions être en place ce nombre de secondes pendant l'année. Donc, si je soustrais maintenant valeur d'origine, ou plutôt cette nouvelle valeur de la first-- 316 secondes, qui bien sûr est de cinq minutes. Donc, si votre site ou votre entreprise est affirmant «cinq neuf», de sorte que vous êtes jusqu'à 99,99% du temps, cela signifie que vous mieux ont été assez intelligent et rapide assez et assez de niveau avec les ressources que vos serveurs ne sont déconnecté cinq minutes sur l'année. Il est un cher et chose difficile à aspirer à. Il est donc un compromis, aussi. 99,999% du temps est assez sacrément dur et coûteux. Cinq minutes-- vous pouvez à peine obtenir au serveur de remplacer physiquement quelque chose qui va mal. Et voilà pourquoi nous commençons câblage choses ensemble plus compliquées a priori de sorte que les ordinateurs peut sorte de se fixer. Ouais. AUDIENCE: [Inaudible] DAVID MALAN: Le problème pourrait être dans un certain nombre de places. Et fact-- AUDIENCE: [Inaudible] DAVID MALAN: Absolument, absolument. Et comme l'image est se complique, il pourrait être les serveurs Web. Il pourrait être la puissance du bâtiment. Il pourrait être quelque chose de physique, comme les câbles se sont effilochés ou expulsés. Il pourrait être la base de données ne répond pas. Il pourrait être qu'ils updated leur exploitation système et quelque chose est suspendu. Donc, il y a tellement d'autres pièces mobiles. Et donc beaucoup de l'ingénierie qui doit aller derrière cette est vraiment juste le commerce offs, comme la façon dont beaucoup de temps, combien d'argent est-il réellement vaut la peine, et quelles sont les menaces vous êtes vraiment inquiet? Par exemple, dans le cours que je donne à Harvard, nous utilisons beaucoup de cloud computing, qui nous allons commencer jeter un oeil à maintenant, en effet, où l'on utilise Amazon Web Services. Tout simplement parce que c'est la celui que nous avons commencé avec. Mais il y a de plus en plus ces jours-ci de Google et Microsoft et d'autres. Et nous choisissons consciemment de mettre tous des machines virtuelles de nos cours, comme on les appelle, dans le je pense il est occidental centre de données en Virginie. La plupart de nos étudiants arriver à être des États-Unis, mais il y a certainement certains internationalement. Mais la réalité est qu'il est juste plus simple et il est moins cher pour nous de mettre tous nos oeufs dans le panier Virginie, même si je sais si quelque chose va mal en Virginie, de même que de temps en temps comme happened-- s'il y a un ouragan ou une météo événement comme ça, s'il y a une certaine problème de réseau électrique ou like-- tous des données de nos cours peuvent se déconnecter pendant un certain nombre de minutes ou d'heures ou même plus. Mais la quantité de complexité qui serait nécessaire, et le montant d'argent qui serait être nécessaire, pour faire fonctionner tout en parallèle en Europe ou en Californie n'a tout simplement pas tellement de sens. Il est donc un commerce rationnel off, mais un douloureux lorsque vous êtes réellement avoir ce temps d'arrêt. Eh bien, nous allons transition dès maintenant à quelques-unes des solutions basées sur le cloud à certains de ces problèmes. Tout ce que nous avons été discutant jusqu'ici est une sorte de problèmes qui ont été avec nous pendant un certain temps, si vous avez votre propre les serveurs de votre entreprise, si vous allez à une co-implantation placer comme un centre de données et partager espace avec quelqu'un d'autre, ou de nos jours dans le nuage. Et ce qui est agréable au sujet le nuage est que tous les de ces choses que je suis le dessin comme des objets physiques peut maintenant être considéré comme sorte d'objets virtuels dans le nuage qui sont simulé par logiciel. En d'autres termes, les ordinateurs d'aujourd'hui, serveurs d'aujourd'hui, comme l'image Dell Je l'ai montré plus haut, sont si rapides, ont tant RAM, tant CPU, tant disque l'espace, que les gens ont écrit logiciel partition pratiquement un serveur vers le haut dans l'illusion de celui-ci étant deux serveurs, ou 200 serveurs, donc que chacun de nous clients a l'illusion d'avoir pas seulement un compte sur certains web hébergeons, mais notre propre machine que nous sommes location de quelqu'un d'autre. Mais il est une machine virtuelle dans pour autant que sur un serveur Dell, il peut encore être divisée en types deux ou plus de 200 machines virtuelles, qui tous donnent une personne administrative l'accès, mais d'une manière où aucun d'entre nous sait ou peut accéder à d'autres virtuelle machines sur le même matériel. Donc, pour peindre un tableau dans les diapositives d'aujourd'hui, J'ai ce plan ici à partir d'un site web appelé Docker. Donc, cela est un peu plus détails que nous avons réellement besoin. Mais si vous regardez ce que votre infrastructure-- si juste le matériel de votre propre, vos serveurs, les racks, les données centre, et tous that-- vous le feriez généralement exécuter un système d'exploitation hôte. Donc, quelque chose like-- il pourrait être Windows. Il ne serait pas Mac OS. Parce que ce n'est pas vraiment entreprise ces jours-ci. Il serait donc Linux ou Solaris ou Unix ou BSD ou FreeBSD ou un nombre quelconque d'autres systèmes d'exploitation qui sont soit gratuit ou commercial. Et puis vous exécutez une programme, programme spécial, appelé un hyperviseur ou moniteur de machine virtuelle, VMM. Et ce sont des produits, si vous êtes familier, comme VMware ou VirtualBox ou Virtual PC ou autres. Et ce que ces programmes font est exactement cette fonctionnalité que je décrit plus haut. Il crée l'illusion qu'une machine physique peut être plusieurs machines virtuelles. Et ces boîtes colorées jusqu'à top est peindre un tableau de ce qui suit. Cet hyperviseur, cet morceau de logiciel, appelez VMware, en cours d'exécution sur une autre système d'exploitation, appelez Linux, est de créer l'illusion que cet ordinateur physique est réellement un, deux, trois ordinateurs virtuels. Donc, je l'ai maintenant acheté, en tant que propriétaire de ce matériel, un ordinateur physique. Et maintenant je loue à trois clients. Et ces trois clients pensent tous ils ont une machine virtuelle dédiée. Et ce n'est pas l'appât et l'interrupteur. Il est plus que la divulgation vous utilisez une machine virtuelle. Mais technologiquement, nous avons tous avoir un contrôle administratif complet sur chacun de ces clients les systèmes d'exploitation, ce qui pourrait un nombre quelconque de systèmes d'exploitation. Je peux installer tout ce que je veux. Je peux le mettre à niveau que je veux. Et je ne même pas savoir ou se soucient de l'autre exploitation Les systèmes sur cet ordinateur, les autres machines virtuelles, à moins que le propriétaire de tout ce gris des choses est d'être un peu gourmand et est survendre ses ressources. Donc, si vous prenez une machine physique et de le vendre à 200 mais pas 400 clients, à un moment donné nous allons trébucher dans les mêmes problèmes de performance qu'avant. Parce que vous avez seulement un fini quantité de disque et la mémoire vive et ainsi de suite. Et une machine virtuelle est juste un programme qui est prétendant être un plein ordinateur à part entière. Ainsi, vous obtenez ce que vous payez ici. Donc, vous trouverez en ligne, vous pourriez payer une compagnie de bonne réputation peut-être 100 $ par mois pour votre propre machine virtuelle, ou votre propre serveur privé virtuel, qui est un autre terme pour cela. Ou vous pourriez trouver une mouche par nuit où vous payez 5,99 $ par mois pour votre propre machine virtuelle. Mais les chances sont que vous ne disposez pas de près autant les performances disponibles pour vous, parce qu'ils ont été survente il donc, que vous le feriez avec le plus élevé niveau de service ou le meilleur vendeur. Alors qu'est-ce que cela signifie pour nous? Alors laissez-moi aller à cela. Je vais aller à aws.amazon.com. Tout simplement parce qu'ils ont un beau menu d'options. Mais ces mêmes leçons applicables à un tas ensemble des autres fournisseurs de cloud. Malheureusement, il est souvent plus le marketing parlent que tout. Et cela ne cesse de changer. Donc, vous allez à un site comme celui-ci. Et cela n'a pas vraiment vous dire quoi que ce soit. Et moi-même, que je regarde cela, ne fais pas vraiment savoir ce que l'une de ces choses nécessairement faire jusqu'à ce que je plonge dans. Mais commençons à gauche, Compute. Et je vais cliquer sur ce. Et maintenant Amazon a franchement un nombre impressionnant de services ces jours-ci. Mais Amazon EC2 est peut-être le plus simple. Amazon EC2 va créer pour nous exactement l'image que nous avons vu il y a un instant. Il est la façon dont ils font beaucoup de leur argent dans le nuage. Apparemment Netflix et d'autres sont dans le nuage avec eux. Tout cela est typiquement marketing parlent pelucheux. Donc ce que je veux faire est d'aller à Pricing-- ou plutôt allons à des instances d'abord juste pour peindre une image de cela. Donc, cela varie selon le fournisseur. Et nous ne devons pas trop profondément dans les mauvaises herbes ici de la façon dont tout cela fonctionne. Mais la façon dont Amazon, par exemple, vous loue une machine virtuelle ou un serveur dans le nuage est qu'ils ont ces sortes de drôles de noms, comme t2.nano, ce qui signifie petit, ou t2.large, ce qui signifie grand. Chacun d'eux vous donne soit un ou deux processeurs virtuels. Pourquoi est-il un processeur virtuel? Eh bien, la machine physique pourrait ont 64 ou plusieurs processeurs réels. Mais encore une fois, grâce à un logiciel, ils créent l'illusion que cette machine peut être une divvied à plusieurs utilisateurs. On peut donc penser à cela comme ayant un processeur Intel ou deux. crédits CPU par hour-- Je voudrais avoir à lire les petits caractères à ce que cela signifie réellement. Cela signifie que la quantité de la machine vous pouvez utiliser par heure vis-à-vis d'autres clients sur ce matériel. Voici la quantité de RAM ou de la mémoire, vous get-- soit un demi gigaoctet, ou 500 mégaoctets ou 1 gigaoctet, ou 2. Et puis le stockage se réfère juste quel genre de disques qu'ils vous donnent. Il y a stockage différent technologies qu'ils offrent. Mais plus intéressant que ce alors peut-être le prix. Donc, si vous êtes le CTO ou un ingénieur qui ne voulez faire tourner un serveur dans votre bureau, pour une raison quelconque, et il est beaucoup trop compliqué ou coûteux à acheter des serveurs et co-localiser eux et payer le loyer dans un espace de cage physique somewhere-- vous voulez juste vous asseoir à votre ordinateur portable tard dans la nuit, saisissez vos informations de carte de crédit, et louer les serveurs du cloud-- ainsi, nous pouvons le faire ici. Je vais descendre to-- Linux est un système d'exploitation populaire. Et nous allons juste avoir une idée des choses. Whoops-- trop grand. Voyons donc à leur plus petit la machine virtuelle, qui semble avoir, pour nos besoins, une CPU et 500 Mo de RAM. C'est assez petite. Mais franchement, les serveurs Web ne sont pas besoin de faire tout ce que beaucoup. Vous avez de meilleures spécifications de votre ordinateur portable. Mais vous ne devez pas les specs ces jours-ci pour les choses. Vous allez payer 0,0065 $ par heure. Voyons donc. S'il y a 24 heures dans une journée, et nous payons autant par heure, il vous en coûtera $ 0,15 à louer que notamment serveur dans le nuage. Et c'est juste pour une journée. Si nous faisons cela 365-- 57 $ à louer ce serveur particulier. Ainsi, il semble super pas cher. C'est aussi super faibles performances. Nous avons donc, pour les cours que j'enseignons ici, ont tendance à utiliser je pense t2.smalls ou t2.mediums. Et nous pourrions avoir quelques centaines utilisateurs, quelques milliers d'utilisateurs, au total. Il est assez modeste. Donc, nous allons voir ce que cela coûterait. Donc, si je fais cette fois des coûts 24 heures 365 fois, celui-ci est de 225 $. Et pour les cours J'enseigne, nous généralement exécuter deux de tout, pour redondance et aussi pour la performance. Donc, nous pourrions dépenser, donc, 500 $ pour les serveurs que nous pourrions avoir besoin par an. Maintenant, si vous avez besoin de plus performance-- nous allons jeter un oeil à la mémoire. Nous avons parlé de la mémoire un peu. Et si vous avez besoin de plus memory-- et 64 gigaoctets est le nombre que je gardais mentioning-- ce qui est presque 1 $ par heure. Et vous pouvez très rapidement voir où ce goes-- donc 24 heures 365 fois. Alors maintenant, il est de 8000 $ par année pour un serveur assez décent. Donc, à un moment donné, il y a ce point d'inflexion où maintenant nous pourrions passer 6000 $ probablement et acheter une machine comme ça et d'amortir son coût plus peut-être deux, trois ans, la durée de vie de la machine. Mais ce qui pourrait vous pousser dans favoriser ou défaveur de location une machine dans le nuage comme ça? Encore une fois, ce qui est comparable, sans doute, à l'un de ces serveurs Dell nous avons vu il y a un peu imaginions. AUDIENCE: [Inaudible] DAVID MALAN: Oui, c'est une énorme hausse. Parce que nous ne sommes pas d'acheter le machine, nous ne devons pas unbox il. Nous ne disposons pas de le soulever. Nous ne disposons pas de le brancher dans notre rack. Nous ne disposons pas de le brancher. Nous ne devons pas payer la facture d'électricité. Nous ne devons pas tourner l'air conditionné. Quand un disque dur meurt, nous ne disposons pas à conduire dans le milieu de la nuit réparer. Nous ne devons pas mettre en place une surveillance. Nous ne disposons pas to-- la liste continue et de toutes les choses physiques vous ne devez faire à cause de «nuage». Et pour être clair, le cloud computing est ce terme très galvaudé. Il a vraiment signifie simplement payer quelqu'un d'autre pour exécuter des serveurs pour vous, ou la location d'espace Les serveurs de quelqu'un d'autre. Ainsi, le terme «cloud computing» est nouvelle. L'idée est vieux de plusieurs décennies. Voilà donc assez convaincant. Et que vous obtenez? Eh bien, vous obtenez également la possibilité de tout faire sur un ordinateur portable à la maison. En d'autres termes, tous les photos que je viens de drawing-- et il n'y a pas si longtemps que même Je rampais autour sur un plancher de serveur brancher les câbles pour chacune des lignes que vous voyez, et l'amélioration du fonctionnement systèmes, et l'évolution des lecteurs autour. Il y a beaucoup de physicalité à tout cela. Mais ce qui est beau dans virtuel machines, comme le nom du genre suggère, maintenant il y a sur le web interfaces grâce à quoi si vous voulez l'équivalent d'une ligne de ce serveur à un autre, tapez simplement, le type, le type, cliquer et faire glisser, cliquez sur Envoyer, et voila, vous l'avez câblé virtuellement. Parce que tout cela se fait dans le logiciel. Et la raison pour laquelle il est fait dans le logiciel est à nouveau parce que nous avons tellement de RAM et ainsi beaucoup CPU disponible pour nous ces jours-ci, même si tous ça prend du temps, il est plus lent pour exécuter les choses dans les logiciels de matériel, tout comme il est plus lent à utiliser une mécanique appareil comme un disque dur que la RAM, quelque chose de purement électronique. Nous avons tant de ressources disponible pour nous. Nous les humains sommes en quelque sorte invariante lente. Et maintenant les machines peuvent faire beaucoup plus élevé par unité de temps. Nous avons ces capacités de faire des choses presque. Et je vais dire pour les cours J'enseigne, par exemple, ici, nous avons peut-être environ une douzaine si totale des machines virtuelles comme celle en cours d'exécution à tout donné temps à faire avant la fin des choses, faire revenir des trucs de fin. Nous avons tous de notre stockage. Donc, toutes les vidéos, y compris les choses comme ce que nous visons, on finit par mettre dans le nuage. Amazon a appelé les services Amazon S3, leur service de stockage simple, qui est tout comme l'espace disque dans le nuage. Ils ont quelque chose appelé CloudFront, qui est le service CDN, un contenu Service Delivery Network, qui signifie qu'ils prennent tous vos fichiers et pour vous répliquez automagically il autour du monde. Donc, ils ne le font pas de manière préemptive. Mais la première fois que quelqu'un en Inde demande votre dossier, ils vont potentiellement en cache localement. La première fois en Chine, première fois au Brésil qui se passe, ils vont commencer la mise en cache localement. Et vous ne devez pas faire tout cela. Et il est si incroyablement convaincant ces jours pour faire bouger les choses dans le nuage. Parce que vous avez cette capacité littéralement de ne pas avoir à faire des humains presque autant travail. Et vous littéralement n'avez pas besoin comme beaucoup les humains faisant ces emplois anymore-- «ops», ou des rôles opérationnels, plus. Vous avez vraiment juste besoin développeurs et moins d'ingénieurs qui peut juste faire des choses presque. En fait, juste pour donner vous un sentiment de cela, laissez-moi aller à la tarification pour un autre produit ici. Voyons voir quelque chose comme CDN S3. Donc, cela est essentiellement un disque dur virtuel dans le nuage. Et si nous faisons défiler vers le bas pour pricing-- il est donc de 0,007 $ par gigaoctet. Et ce est-- comment faisons-nous cela? Je pense que ce par mois. Donc, si c'est par month-- ou par jour? Dan, est-ce par jour? Ceci est par mois, OK. Donc, si cela est par month-- désolé, il est le 0,03 $ par mois. Il y a 12 mois de l'année. Donc, la quantité de données pourrait vous stockez dans le nuage? Un gigaoctet est pas énorme, mais je Je ne sais pas, comme 1 téraoctet, de sorte que 1000 d'entre eux. Cela ne veut pas tout ce que beaucoup. Il est $ 368 à stocker un téraoctet des données dans le cloud d'Amazon. Alors, quelles sont quelques-unes des les compromis, alors? Il ne peut pas tous être bon. Rien que nous avons parlé aujourd'hui sorte de sans une prise ou un coût. Donc, ce qui est mauvais sur le déplacement tout dans le nuage? AUDIENCE: Sécurité. DAVID MALAN: OK, qu'est-ce que tu veux dire? AUDIENCE: [Inaudible] DAVID MALAN: Ouais, à droite. Et voulez-vous vraiment certains ingénieurs aléatoires sur Amazon que vous ne rencontrerez jamais avoir l'accès physique à ces ordinateurs, et s'ils ont vraiment voulu, un accès virtuel? Et même si, dans théorie software-- bien, Le chiffrement peut absolument vous protéger contre cela. Donc, si ce que vous êtes le stockage sur vos serveurs est encrypted-- moins préoccupante. Mais dès qu'un humain a physique l'accès à une machine, le cryptage mis à part, tous les paris sont en quelque sorte hors tension. Vous savez peut-être d'antan en particulier que les PC, même si vous aviez ces choses appelés «mots de passe BIOS," étaient quand votre bureau démarré, vous seriez invité avec un mot de passe n'a rien à voir avec Windows, vous pouvez généralement il suffit d'ouvrir le châssis de la linge, trouver de minuscules épingles, et utiliser quelque chose appelé un cavalier et il suffit de connecter ces deux fils pour environ une seconde, complétant ainsi un circuit. Et cela éliminerait le mot de passe. Ainsi, lorsque vous avez un accès physique à un appareil, vous pouvez faire des choses comme ça. Vous pouvez retirer le disque dur. Vous pouvez accéder à cette façon. Et voilà pourquoi, dans le cas de Dropbox, par exemple, il est un peu inquiétant de constater que non seulement ils avoir les données, même si elle est crypté, ils ont également la clé. D'autres soucis? AUDIENCE: [Inaudible] DAVID MALAN: Oui, il est très true-- le Googles, les pommes, les Microsofts du monde. Et en fait, combien de temps ont vous avez eu votre iPhone pour? Oui, donner ou prendre. AUDIENCE: [Inaudible] DAVID MALAN: Je suis désolé? Vous êtes parmi ceux qui a un iPhone, non? AUDIENCE: Oui. DAVID MALAN: Combien de temps avez-vous eu votre iPhone? AUDIENCE: [Inaudible] DAVID MALAN: OK, Apple sait littéralement où vous avez été chaque heure de le jour au cours des cinq dernières années. AUDIENCE: [Inaudible] DAVID MALAN: Quelle est une caractéristique merveilleuse. AUDIENCE: [Inaudible] DAVID MALAN: Oui, mais compromis sûr. AUDIENCE: [Inaudible] DAVID MALAN: Oui, il est très facile à. AUDIENCE: [Inaudible] DAVID MALAN: Autres inconvénients? AUDIENCE: [Inaudible] DAVID MALAN: Absolutely-- technologiquement, économiquement, il est assez convaincant pour sorte de gagner ces économies d'échelle et déplacer tout en le nuage soi-disant. Mais vous ne voulez probablement à aller avec certains des plus grands poissons, les Amazones, le Googles, la Microsofts-- Rackspace est assez big-- et quelques autres, et non pas voler nécessairement par des gens de nuit pour qui il est très facile à faire ce genre de technique de nos jours. Et c'est que vous pouvez payer 5,99 $ par mois pour. Mais vous aurez certainement obtenez ce que vous payez. Quand vous dites [Inaudible], qui est à ce moment des choses comme ces cinq neuf viennent, de sorte que, même si technologiquement nous ne pouvons pas vraiment garantir 99,999, nous allons construire dans une sorte de la peine au contrat de sorte que si cela ne se produit, au moins il y a un certain coût pour nous, le vendeur. Et c'est ce que vous le feriez normalement être de les amener à accepter de. AUDIENCE: [Inaudible] DAVID MALAN: Et le une sorte de bénédiction est que même quand on va vers le bas, pour exemple, ou même certaines entreprises, la réalité est Amazon, par exemple, a un si grand nombre clients fichus, des clients bien connus, opérant à partir de certains centres de données que quand quelque chose va vraiment mal, comme les actes de Dieu et la météo et autres, s'il y a toute sorte de doublure d'argent, il est que vous êtes en très bonne compagnie. Votre site peut être déconnecté. Mais il en est de la moitié comme des Internet populaire. Et il est sans doute un peu plus agréable à vos clients si elle est plus d'un Internet chose qu'une chose acme.com. Mais c'est un peu un tricheur. Donc, en termes d'autres choses à regarder, pour que nous n'excluons pas d'autres, si vous allez à Microsoft Azure, ils avoir à la fois Linux et Windows trucs qui est comparable à d'Amazon. Si vous allez à Google Compute Engine, ils ont quelque chose de similaire aussi bien. Et juste pour arrondir ces offres de cloud, Je vais faire mention d'une autre chose. Ceci est un site web populaire que ce représentant d'une classe de technologies. Ceux que nous venons de parler environ, Amazon, serait IAAS, Infrastructure As A Service, où vous sorte de matériel physique en tant que service. Il y a SAAS. En fait, permettez-moi prends des notes ces bas. Infrastructure IAAS-- As A Service, SAAS, et PAAS, qui sont acronymes remarquablement confus qui ne décrivent trois différents types de choses. Et les acronymes eux-mêmes ne pas vraiment d'importance. Tout cela est de l'étoffe des nuages nous venons de parler à propos, l'étoffe de niveau inférieur, la la virtualisation du matériel et de stockage dans le nuage que l'on appelle, que ce soit Amazon, Microsoft, Google ou autre. Software as a Clients-- chacun d'entre nous sorte de l'utiliser. Si vous utilisez Google Apps pour Gmail ou calandrage, l'un de ces web-based Il y a des applications qui 10 ans, nous aurait des icônes à double cliqué sur notre bureau, le logiciel en tant que service est maintenant vraiment application web. Et en tant que plate-forme service dépend en quelque sorte. Et un exemple, je vais vous donner ici dans le contexte du cloud computing-- il y a une entreprise qui est tout à fait populaires ces jours-ci, Heroku. Et ils sont un service, une plate-forme, si vous voulez, qui tourne au-dessus de l'infrastructure d'Amazon. Et ils ont juste le rendre encore plus facile pour les développeurs et les ingénieurs pour obtenir des applications Web en ligne. Il est une douleur, d'abord, à utiliser Amazon Web Services et d'autres choses. Parce que vous avez réellement connaître et comprendre sur les bases de données et les serveurs Web et équilibreurs de charge et tous les trucs Je viens de parler. Parce que tous Amazon a fait est pas caché ces défis de conception. Ils ont juste les virtualisées et les déplacer dans un navigateur, dans le logiciel au lieu de matériel. Mais des entreprises comme Heroku et autres fournisseurs PAAS, la plate-forme en tant que service, ils utilisent ces fondamentaux barebone que nous venons de parler, et ils construisent plus facile à utiliser le logiciel sur le dessus de celui-ci de sorte que si vous voulez obtenir un basé sur le Web demande en ligne ces jours-ci, vous avez certainement savoir programmer. Vous avez besoin de connaître Java ou Python ou PHP ou Ruby ou un tas d'autres langues. Mais vous avez aussi besoin d'un endroit pour le mettre. Et nous avons parlé plus tôt obtenir une société d'hébergement Web. C'est un peu au milieu des années 2000 comme approche pour obtenir quelque chose en ligne. Aujourd'hui, vous pourriez plutôt payer quelqu'un comme Heroku quelques dollars par mois. Et essentiellement, une fois que vous avez fait la configuration initiale, de mettre à jour votre site web, vous il suffit de taper une commande dans une fenêtre. Et quel que soit le code que vous avez écrit ici sur votre ordinateur portable immédiatement est distribué à un nombre quelconque des serveurs dans le nuage. Et Heroku prend soin de toute la complexité. Elles figurent toutes les bases de données stuff, tout l'équilibrage de charge, tous les maux de tête que nous avons vient d'écrire sur la carte, et de cacher tout cela pour vous. Et en retour, vous venez les payer un peu plus. Vous avez donc ces infrastructures que un service, les plates-formes en tant que service, puis le logiciel en tant que service. Il est, à nouveau, cette abstraction ou marcottage. Toute question sur le nuage ou la construction de sa propre infrastructure? Tout droit, qui était beaucoup. Pourquoi ne pas aller de l'avant et prendre notre pause de 15 minutes ici. Nous reviendrons avec quelques nouveaux concepts et un peu de mains sur l'occasion avant la soirée est terminée.