
English: 
Behind HAProxy we actually get into the meat of Reddit's infrastructure.
We had a bunch of app servers.
These are physical machines that are running Python programs like you've been working on in this class.
When I left I think we had maybe 20 of these.
It wasn't that many. How many do you guys have now? >>180.
Okay. That's pretty significant.
They went from 20 when Reddit was a big site to 180 when Reddit became a huge site.
Now, these are running Python.
They're using a web framework that I talked about previously in this unit called Pylons.
Do you guys still use Pylons? >>Yes.
This handled just about every request.
I don't recall if we had special web servers for static content.
Do you guys have special web servers now for static content? >>We use S3.
S3 for static content. Oh, yes. We just transitioned to that at some point before I left.

Spanish: 
Detrás de HAProxy, llegamos a la esencia[br]de la infraestructura de Reddit.
Tenemos un montón de [br]servidores de aplicaciones.
Estas son máquinas que ejecutan programas escritos en Python, como los que has visto en esta clase.
Cuando me fui de Reddit, creo que teníamos[br]más o menos 20 de estas máquinas.
No son tantas. ¿Cuántas tienen ahora?[br]-180.
Ok. Esas ya son muchas.
Fueron de 20, cuando Reddit era un sitio web grande, [br]a 180, cuando Reddit se convirtió en un sitio enorme.
Ahora, estas máquinas están ejecutando Python.
Están utilizando un marco de trabajo web del cual [br]he hablado antes en esta unidad, llamado Pylons.
-¿Uds. todavía usan Pylons?[br]-Sí.
Se encargan de todos los pedidos.
No recuerdo si teníamos servidores web[br]especiales para contenido estático.
-¿Uds. tienen servidores web especiales[br]para contenido estático?
-Usamos S3.[br]-S3 para contenido estático. Claro. Hicimos la transición

Portuguese: 
Com o HAProxy nós verdade chegamos nas [br]entranhas da infraestrutura do Reddit.
Tínhamos alguns servidores de aplicativos.
São máquinas que estão rodando programas[br]em Python como os que trabalhamos.
Quando saí tínhamos cerca de 20 desses.
Não foram tantos assim. [br]Quantos vocês têm agora? >>180.
Tudo bem. isso é muito significativo.
Passaram de 20 de quando Reddit era um site[br]grande para 180 quando se tornou enorme.
Agora, estes estão rodando Python.
Estão usando uma estrutura de web que [br]já mencionei chamada Pylons.
Vocês usam Pylos? >> Sim.
Isso lida com todos os pedidos.
Não me lembro se tivemos servidores de web [br]especiais para conteúdo estático.
Vocês têm servidores especiais para[br]conteúdo estático? >>Usamos S3.
S3 para conteúdo estático. Ah, sim. [br]Havíamos feito a transição para ele.

Japanese: 
ではRedditのインフラの中身について話します
私たちはAPサーバをたくさん持っていました
それらはこの講義でやってきたような[br]Pythonプログラムを実行する物理的なマシンです
私が辞めた頃はおそらく20台はあったと思います
今は何台くらいありますか?
180台ですね
それはすごい数ですね
Redditが大規模なサイトだった時の20台から[br]更に巨大になった今では180台になりました
現在このサーバではPythonを使っており
フレームワークは以前お話ししたPylonsを使っています
まだPylonsを使っていますか?
Pylonsは ほぼ全てのリクエストを処理してくれました
以前静的コンテンツに特別なWebサーバを使っていたか
思い出せませんが今は何か使っていますか?
Amazon S3です
そうでした　辞める前に[br]ちょうどAmazon S3に切り替えていましたね

Portuguese: 
Tudo que fazemos está no Amazon AWS.
Basicamente alugamos as máquinas do[br]Amazon, e um dos sistemas em AWS é S3.
Talvez possa explicar o que S3 é e [br]como funciona. >>Claro.
S3 é um serviço de armazenamento, ele armazena os arquivos de forma distribuída dentro da "nuvem".
Amazon deixa que coloque objetos dentro de[br]"cestos", que são valores chave de
armazenamento, e outras pessoas podem[br]assim clicar numa URL e pegar o objeto.
Armazenamos todo nosso conteúdo estático [br]como CSS e JavaScript no S3.
Ao entrar no site, está na verdade indo[br]via Akamai para S3.
Para conteúdo estático, um usuário não chega [br]ao HAProxy ou aos servidores nem nada assim.
Sim, na maioria das vezes.
E podemos usar isso porque o conteúdo nunca muda. >>Certo.

Spanish: 
justo antes de que me fuera. Todo lo[br]que hacemos está en Amazon AWS.
Básicamente, alquilamos las máquinas de Amazon, [br]y uno de los sistemas en AWS es S3.
Tal vez podría explicar qué es S3, y cómo funciona.[br]-Claro.
S3 es simplemente un servicio de almacenamiento, que almacena archivos de forma distribuida en la nube
Amazon te permite guardar objetos en los "baldes"[br]y es literalmente un almacén de valores clave de estos
archivos, y otras personas pueden[br]ir al URL y tomar el objeto.
Almacenamos todo nuestro contenido estático,[br]como CSS y JavaScript en S3
Cuando llegas al sitio, estás yendo a S3 través de[br]Akamai, en vez de usar nuestra infrastructura.
Así que para contenido estático, un usuario nunca va a HAPROXY o a los servidores de aplicación, ni nada por
el estilo. [br]-Sí, mayormente.
Y podemos hacer eso porque el contenido nunca cambia. [br]-Exacto.

Japanese: 
すべてをAmazonのAWS上で行っています
AWSのシステムの1つがAmazon S3で[br]基本的にAmazonからマシンを借ります
Amazon S3の内容と機能を[br]ちょっと説明してみてくれませんか?
Amazon S3は単純なストレージサービスで 基本的には[br]クラウドにおける分散型ファイルストレージです
S3ではオブジェクトをバケットに入れられますが[br]それが そのファイルのキー値の保存先となります
そして第三者がURLを入力し[br]そのオブジェクトをつかむことができるんです
私たちはCSSやJavaScriptのような静的コンテンツを[br]S3上に保存しています
皆さんがサイトにアクセスする時[br]実際にはAkamai経由でS3に行っているのです
では静的コンテンツに関してはユーザがHAProxyや[br]APサーバにアクセスすることは全くないんですね?
ええ　大部分はそうです
コンテンツは変わらないので[br]私たちは何もしなくていいですね

English: 
Everything we do is on Amazon AWS.
Basically you rent machines from Amazon, and one of the systems in AWS is S3.
Maybe you could explain what S3 is an how it works. >>Sure.
S3 is a simple storage service, and it's basically a distributed file storage thing in "the cloud."
Amazon let's you put objects into the buckets, and it's literally just a key value store of these files,
and other people can hit a URL and grab the object.
We store all of our static content like CSS and JavaScript on S3.
When you're hitting the site, you're actually going via Akamai to S3 instead of our infrastructure.
So for static content, a user never even hits HAProxy or the app servers or anything at all.
Yes, for the most part.
And we can get away with that because the content never changes. >>Right.

Portuguese: 
Eu sei que no começo do Reddit--e certamente [br]no que estamos construindo nesse
curso-- todo o conteúdo, estático ou não, chega[br]através desses servidores de aplicativos.
Conforme o site cresce, não existe necessidade[br]de desperdiçar todos essas
conexões para lidar com JavaScript, CSS e imagens.
Por um tempo usávamos EngineX[br]para o conteúdo estático.
Estávamos numa transição quando eu sai.[br]>> Algum conteúdo estava no S3.
Movemos todo o CSS e outras coisas em Outubro.
Estávamos usando EngineX e chegamos ao [br]ponto em um servidor EngineX
fazendo todo o trabalho, não aguentava [br]quando mudávamos o conteúdo.
O cache de todos foi invalidado.
Então implantávamos um código novo,[br]e haveria mudança no conteúdo estático,
e do nada o EngineX ficava sobrecarregado
e todos obtinham um Reddit completamente desconfigurado.
Tudo bem, vi isso acontecer algumas vezes.

English: 
So I know in the early days of Reddit--and certainly in the applications we've been building
in this class--all of the content, static or not, gets served from these app servers.
As you grow, there is no reason why you need to waste all these resources handling
connections for JavaScript and CSS and images.
For a while we were using EngineX for the static content.
I think we were just in transition when I left. >>Some of the static was on S3.
We just moved all of the CSS and stuff in October.
We were using EngineX and it got to the point where the one EngineX server doing
all of the static content couldn't handle it anymore when we changed the content.
Everybody's caches were invalidated.
So we would do a deploy of new code, and there would be this static content change,
and all of a sudden that EngineX would get overloaded
and everybody would be getting completely unstyled Reddit.
Okay, I've seen that happen a few times.

Spanish: 
Entonces....yo sé que al principio, en Reddit --y ciertamente[br]en las aplicaciones que hemos estado construyendo
en esta clase-- todo el contenido, estático o no, [br]se sirve desde estos otros servidores de aplicaciones.
A medida que vas creciendo, no hay razón por la cual [br]deberías malgastar tus recursos en manipular
conexiones para JavaScript y CSS, e imágenes.
Por un tiempo usamos Nginx[br]para el contenido estático
Creo que estábamos en transición cuando yo me fui.[br]-Algo del contenido estático estaba en S3.
Acabamos de mover todo el CSS [br]y lo demás en Octubre.
Estábamos usando Nginx y llegamos al punto en [br]que el servidor Nginx que estaba manipulando
todo el contenido estático no fue capaz de seguir[br]administrando la información cuando el contenido
cambiaba. Todos los cachés eran inválidos.
Si hacíamos un despliegue de nuevo código, [br]o había un cambio en el contenido estático,
de pronto el Nginx se hallaba sobrecargado,
y la gente sólo podía acceder [br]a un Reddit sin nada de estilo.
Ok, he visto eso un par de veces.

Japanese: 
Redditの初期の頃から構築してきた全コンテンツは
APサーバから提供されているとお話ししましたね
規模が大きくなる過程でJavaScriptやCSS画像との
つながりを処理するために[br]時間を無駄に使いたくないからです
しばらくの間は[br]静的コンテンツにEngineXを使用していました
辞める頃に移行しましたっけ?
コンテンツのいくつかはS3上にありましたが[br]10月に全CSSなどを移したばかりです
EngineXを使っていたのですが[br]コンテンツを変更した際に
あるEngineXサーバが[br]もう処理しきれなくなってしまったのです
全員のキャッシュが無効化されました
それで新しいコードを展開し[br]静的コンテンツの変更がされる予定でしたが
突然EngineXがオーバーロードしてしまい
未完成のRedditが[br]ユーザの目に触れることになったのです
そうですね　私も何度か目にしました

English: 
So EngineX is just a web server.
Back in the early days of the internet, almost all the content online was static.
It was served by these things called web servers
which basically take HTTP requests, find the file that was in the URL--
like the actual file name mapped directly to a file on the web server--
and they would serve it.
That was basically almost the entire Internet.
Over the last 15 years, the content online has changed from basically being 100% static
to almost 100% dynamic.
In fact, when I started teaching this course, in Unit 1 I was trying to think of a website
that was 100% static, and I can't think of one.
Do you have any ideas of one off the top of your head?
There has actually been a resurgence of static in the form of websites
that get compiled from files, and so there is actually a lot of blogs out there now
that are purely static served but are generated from files dynamically.

Japanese: 
つまりEngineXはただのWebサーバなのです
ネットが普及し始めた頃は[br]オンラインのほぼ全コンテンツが静的でした
コンテンツはWebサーバから提供されていました
WebサーバはHTTPリクエストを受け取り[br]URL中のファイルを探します
URLはサーバ上のあるファイルに直接関連づけられた[br]実際のファイル名のようなもので
そうしてサーバはコンテンツを提供するのです
これがインターネットのすべてでした
ここ15年でオンラインのコンテンツは[br]基本的に100％静的から
ほぼ100％動的へと変化しました
現在100％静的なウェブサイトがあるか[br]思い出してみましたが
1つも思いつきませんでした
何か思いつくものはありますか?
実はファイルからコンパイルされたWebサイトの形式で[br]スタティック復活の動きがありました
現在実際には完全に静的に提供されているブログが[br]たくさんありますが
実際それらは動的ファイルから生成されているのです

Portuguese: 
Então EngineX é apenas um servidor web.
No começo da internet, quase todo o [br]conteúdo online era estático.
Era entregue por esses servidores web
que basicanente pegavam os pedidos de HTTP, [br]localizavam o arquivo da URL--
como o arquivo com o nome igual ao[br]mapeado no servidor web--
e o entregavam.
Assim era basicamente como [br]a internet funcionava.
Durante os últimos 15 anos, o conteúdo [br]online basicamente mudou de
100% estático para quase 100% dinâmico.
De fato, quando comecei esse curso, [br]na Unidade 1, tentava pensar num
site que fosse 100% estático, mas não [br]me lembrei de nenhum .
Vocês conhecem algum?
Houve, na verdade, uma ressurgência de[br]conteúdo estático na forma de
sites que tem arquivos compilados, então [br]temos na verdade muitos blogs hoje que
são entregues via servers estáticos, mas [br]que são gerados de arquivos dinâmicos.

Spanish: 
Nginx es simplemente [br]un servidor web.
En los viejos tiempos de la intenet, casi [br]todo el contenido oniine era estático
y era servido por estas cosas [br]llamadas "servidores web"
que básicamene procesan peticiones HTTP, [br]encuentran el archivo que estaba en el URL,
--es decir, el propio nombre del archivo nos [br]dirigía a un archivo en el servidor web--
y los servidores "servían" el archivo.
Así funcionaba casi toda la internet.
Durante los últimos 15 años, el contenido online [br]ha cambiado, pasando de ser prácticamente
100% estático a casi 100% dinámico.
De hecho, cuando yo empecé a enseñar esta clase, en [br]la Unidad 1, estaba intentando dar un ejemplo de un sitio
web actual que fuera 100% estático, [br]y no pude hallar uno.
¿Se te ocurre alguno?
De hecho, ha habido un resurgimiento de [br]la estática en la forma en que los sitios web
que se compilan desde archivos, [br]y ahora hay un montón de blogs
que son servidos de forma puramente estática, [br]pero son generados desde los archivos dinámicamente.

English: 
We're going to talk about how much content Reddit precomputes
as like a for of this--we talked about in Unit 6 this notion of caching.
You can wait to cache something until it's needed or you can cache it ahead of time,
so that the user never actually touches the database.
What you're getting at is like an extreme form of that.
Yeah. You only compile it when you need to, when you change it.
So you build up your whole blog, I guess, with static content.
Static content--the whole thing is its really easy to serve, because it's the same for everybody.
Having static content in S3 or in EngineX, even when Reddit was pretty big when I left,
we could get away with one web server there, because Akamai handled most of the load.
Akamai is pretty clever about this piece of content is about to expire.
I'll go ahead and fetch it in advance to keep the users from all slipping
through Akamai and pounding this guy.

Spanish: 
Vamos a hablar de cuánto [br]contenido Reddit precomputa
--hablamos en la Unidad 6 de este concepto de cacheo.
Puedes esperar a cachear algo hasta que sea [br]necesario, o puedes cachear algo de antemano,
así el usuario en realidad[br]nunca toca la base de datos.
Lo que estás indicando es [br]una forma extrema de esto.
Si. Sólo compilas datos cuando lo [br]necesitas, cuando algo cambia.
Así que puedes construir tu blog [br]completemente con contenido estático.
El contenido estático es muy fácil de servir [br]porque es igual para todo el mundo.
Tener contenido estático en S3 o Nginx --aun cuando[br]Reddit ya era bastante grande para cuando me fui--
podíamos hacer lo que necesitábamos con un servidor web porque Akamai podía soportar la mayoría de la carga.
Akamai es bastante inteligente y sabe [br]cuando algún contenido está por expirar.
Lo agarraré por adelantado, para [br]evitar que los usuarios pasen
por Akamai y sobrecarguen el servidor Nginx

Japanese: 
次はRedditの事前計算についてお話しします
レッスン6でキャッシュの概念について説明しましたね
キャッシングは必要な時にも[br]また事前にもすることができます
ですからユーザが実際にデータベースに[br]触れることはありません
目指しているのはこの究極の形ですね?
ええ　コンパイルするのは[br]必要な時と変更する時だけです
たとえば静的コンテンツで[br]ブログ全体を構築するなどでしょうか
とにかく静的コンテンツは[br]とても簡単に提供できるのです
私が辞めた時はすでに[br]静的コンテンツはかなり膨大な数でしたが
Akamaiがほとんどの負荷を処理していました
Akamaiは期限の切れそうなコンテンツに関しては[br]かなり優れているんです
ユーザがAkamaiからすり抜けないように[br]またサーバに負荷をかけないように
先に行って前もってコンテンツを取得するのです

Portuguese: 
Vamos falar sobre quanto do conteúdo [br]o Reddit pré-computa
como uma forma de--falamos sobre isso[br]na Unidade 6, a noção de "caching".
Você pode esperar ocultar algo quando[br]necessário ou pode ocultar com
antecedência, para que o usuário nunca[br]chegue até a base de dados.
Estamos chegando a uma forma extrema de fazer isso.
Sim. Você apenas compila quando[br]precisa, quando faz alterações.
Então você constrói todo o blog, acho [br]que, com conteúdo estático.
Conteúdo estático--ele é muito fácil de entregar,[br]porque é igual para todos.
Ter conteúdo estático no S3 ou no EngineX,[br]mesmo quando o Reddit já era bem grande,
nos permitia ter apenas um servidor web, [br]porque Akamai lidava com a maior carga.
Akamai é muito esperto ao lidar com pedaços[br]de conteúdo que estão para expirar.
Vou em frente e o pego antes para prevenir [br]os usuários de passarem
através do Akamai e encontrarem esse cara.
