SlideShare una empresa de Scribd logo
FACEBOOK !!
Sistemas Distribuidos
HISTORIA DE FACEBOOK
• Mark Zuckerberg creó Facebook en el periodo en que fue estudiante de
la Universidad de Harvard. Cuando esta red social empezó a ganar en popularidad,
Mark abandonó sus estudios en Harvard. La compañía actualmente tiene sus
oficinas centrales en Menlo Park, California. En 2003 Zuckerberg lanzó en la
universidad un sitio web llamado Facemash. donde reunía varias fotografías y
nombres de estudiantes de Harvard, este sitio estuvo disponible solo por algunas
horas y por este suceso fue llevado ante los directivos de la Universidad, quienes
culparon a Mark por haber sustraído datos e imágenes del sistema informático de la
institución; suspendieron a Mark de clases, quien luego se alejó de la universidad al
año siguiente para crear Facebook
HISTORIAS
• A mediados de 2007 lanzó las versiones en francés, alemán y español traducidas por
usuarios de manera no remunerada, principalmente para impulsar su expansión fuera
de Estados Unidos, ya que sus usuarios se concentran en Estados Unidos, Canadá
y Reino Unido. Facebook cuenta con más de 1350 millones de miembros, y traducciones a
70 idiomas.
• Su infraestructura principal está formada por una red de más de 50 000 servidores que
usan distribuciones del sistema operativo GNU/Linux usando LAMP.
• En febrero de 2014 los responsables de Facebook anunciaron la compra del servicio de
mensajería móvil WhatsApp por 16 000 millones de dólares.
• El 9 de abril de 2012 se anunció que Facebook adquirió Instagram por 1000 millones
de dólares.
SISTEMA DISTRIBUIDO DE FACEBOOK
• 1. Linux
Aquí sería más preciso decir que se trata del ecosistema Linux, en particular de LAMP:
• Linux, el sistema operativo que administrar los recursos de cada servidor en Facebook,
• Apache, el servidor de páginas web,
• MySQL, el manejador de bases de datos, el que almacena de forma estructurada los
datos de los usuarios,
• Y PHP, el lenguaje de programación que automatiza la creación de páginas web.
• Facebook no sería posible sin Linux.
CÓMO ESTÁ PROGRAMADO FACEBOOK?
• El front end de Facebook se entrega principalmente a través de PHP (con cientos de
bibliotecas personalizadas), que se ejecuta en algo similar o igual a HipHop para
PHP (HHVM)
• HHVM fue creado como el sucesor de la máquina de ejecución HipHop for PHP, el
cual es un transpilador de PHP-a-C++, también creado por Facebook.
• También hay algo de HTML5 y JavaScript en el front end para que puedas
interactuar con el sitio constantemente sin tener que volver a cargar la página.
HHCM
• HHVM (conocido como HipHop Virtual
Machine) es una máquina
virtual de código abierto basado
en compilador Just-in-Time (JIT), el cual
sirve como un motor de ejecución para
los lenguajes PHP y Hack. Usando el
principio del compilador JIT, ejecuta
código PHP o Hack en código Bytecode
HipHop intermedio, el cual es entonces
traducido en código máquina,
optimizado, y ejecutado nativamente.
HAYSTACK
• El sistema de alto rendimiento desarrollado por Facebook para almacenar y
recuperar objetos, utilizado por Facebook para almacenar y recuperar fotos. Hay (en
junio de 2010) 20.000.000.000 de fotos en Facebook, cada una en 4 resoluciones
distintas…. Además hay que tener en cuenta que de esas se recuperan 1.200.000
fotos cada segundo.
BIGPIPE
• Un sistema dinámico para
servir páginas web (desarrollado
por Facebook) que permite la
división de cada página en
sección (ellos los llaman
“pagelets”) para optimizar su
rendimiento. Cada sección de la
página web se recupera por
separado (y muchas ocasiones en
paralelo) con la ventaja de si
una parte de la web está
desactivada o rota, el usuarios
sigue viendo el resto sin
problemas.
CASSANDRA
• Además de Facebook, sitios como Reddit y Twitter también usan Cassandra para
almacenar los datos de los usuarios de forma estructurada y distribuida. Se dice que
Cassandra pertenece a una segunda generación de bases de datos, a un paradigma
llamado NoSQL. Facebook hizo público el código de Cassandra al tiempo que lo
entregó a la comunidad Apache en el 2008.
• Facebook no podría escalar sin Cassandra.
CARACTERÍSTICAS DE CASSANDRA
• Descentralizado
• Todos los nodos del clúster tiene el mismo rol. No hay un único punto de fallo. Los datos se distribuyen a través del clúster
(por lo que cada nodo contiene datos diferentes). No existe un nodo maestro por lo que cada nodo puede dar servicio a
cualquier solicitud.
• Soporta replicación y replicación de múltiples data center
• Las estrategias de replicación son configurables .22 Cassandra está diseñado como un sistema distribuido, para el
despliegue de un gran número de nodos a través de múltiples centros de datos. La arquitectura distribuida de Cassandra
está diseñado para desplegarse sobre múltiples data center, tener redundancia y recuperarse ante desastres.
• Escalabilidad
• El rendimiento de leer y escribir aumenta linealmente a medida que se añaden nuevos nodos. Se pueden agregar nuevos
nodos sin necesidad de interrumpir la ejecución de la aplicación.
• Tolerancia a fallos
• Los datos se replican automáticamente a múltiples nodos para recuperarse frente a fallos. Cassandra soporta replicación a
través de múltiples datacenter. Se puede reemplazar nodos que presenten fallos sin tiempo de inactividad o interrupción de
la aplicación.
HADOOP Y HIVE
• Hadoop es un sistema que permite realizar cálculos sobre cantidades ingentes de
datos. Facebook lo utiliza para las estadísticas. Hive está desarrollado por Facebook
y permite ejecutar consultas SQL contra Hadoop. Ambos proyectos son open-source y
se usan en multitud de sitios webs grandes como Yahoo y Twitter
• Este es un proyecto auspiciado por la Fundación Apache. Entre sus varias
funcionalidades destaca una fundamental para Facebook: el análisis de grandes
conjuntos de datos sobre los cuales es posible inquirir, buscar información en ellos.
• Facebook no podría ofrecer su servicio de búsqueda sin Hive.
THRIFT
• Podría decirse que Thrift es un kit de herramientas, uno especializado en
la interoperabilidad de lenguajes de programación. A través de Thrift Facebook ha
combinado el uso de lenguajes tan distintos entre sí como C++, Java, Python, PHP,
Ruby, Haskell, y más, a lo largo de todos sus equipos de desarrollo.
• Facebook no podría crear servicios de software a la velocidad que requiere sin la
ayuda de Thrift.
VARNISH
• Es un acelerador HTTP que puede
actuar como distribuidor de cargas y
que también puede cachear contenido
que puede ser servido de forma
espectacularmente rápida. Facebook
usa Varnish para mostrar fotos y fotos
de perfil, con una carga de miles de
millones de peticiones diarias.
SCRIBE
• Lo que hace Scribe es muy sencillo: es un sistema de distribución y registro de
mensajes en los servidores, tolerante a fallas y capaz de funcionar sobre una gran
cantidad de equipos.
• Facebook gestiona con mayor facilidad sus miles de servidores gracias a Scribe.
ALMACENAMIENTO
• Facebook cuenta con almacenamiento de datos único y tiene problemas de acceso
que nadie más en el mundo tiene. Por lo tanto, tenemos sistemas de nadie más en el
mundo tiene, y nadie más en el mundo debería estar al tanto de cómo funcionan a
menos que trabajen en ellos dicho esto, diseñamos un montón de nuestro propio
hardware (véase el Open Compute Project, iniciado por FB) para ser lo más eficiente
y rentable posible. Utilizamos balanceadores de carga para asegurarnos de que las
máquinas que están libres asuman más carga. Si el equipo se cae, se pone un
repuesto -Chris Scholz, un Ingeniero de Sistemas que trabaja para Facebook
BALANCEADOR DE CARGA
• Un Balanceador de carga
fundamentalmente es un dispositivo de
hardware o software que se pone al
frente de un conjunto de servidores que
atienden una aplicación y, tal como su
nombre lo indica, asigna o balancea las
solicitudes que llegan de los clientes a los
servidores usando algún algoritmo
(desde un simple round-robin hasta
algoritmos más sofisticados)
OPEN COMPUTE PROJECT
• El proyecto OCP (Open Compute Project) tiene la misión de diseñar el servidor más
eficaz para el almacenamiento de datos de la llamada informática escalable. Todos
los centros de datos de la compañía Facebook son 100% de OCP.
CENTROS DE
DATOS DE
FACEBOOK
• Central de Prineville en
Oregon
• El centro de Prineville
en Oregon, es un
gigante eficaz de
ahorrar el 52% de
energía en comparación
con otra instalación
similar. Fue construido
con 950 kilómetros de
cable.
A GRANJA DE SERVIDORES DE FACEBOOK EN
LULEA, SUECIA
• 27.000 metros cuadrados
• Equivalente a 6 estadios de
futbol
GRACIAS!!

Más contenido relacionado

La actualidad más candente

Cuadro Comparativo sobre Sistemas Operativos.
Cuadro Comparativo sobre Sistemas Operativos. Cuadro Comparativo sobre Sistemas Operativos.
Cuadro Comparativo sobre Sistemas Operativos.
Juan Barrientos
 
Ensayo 2 sistemas operativos
Ensayo 2 sistemas operativosEnsayo 2 sistemas operativos
Ensayo 2 sistemas operativosangelaalvarez8720
 
Linea de tiempo
Linea de tiempo Linea de tiempo
Linea de tiempo
Janaynac_
 
Sistemas operativos centralizados
Sistemas operativos centralizadosSistemas operativos centralizados
Sistemas operativos centralizados
Jorge Jonathan Ramirez
 
La historia de los sistemas operativos
La historia de los sistemas operativosLa historia de los sistemas operativos
La historia de los sistemas operativos
jjajuas
 
Red HAT
Red HATRed HAT
SISTEMAS OPERATIVOS WINDOWS, LINUX, MACOS, ANDROID
SISTEMAS OPERATIVOS  WINDOWS, LINUX, MACOS, ANDROIDSISTEMAS OPERATIVOS  WINDOWS, LINUX, MACOS, ANDROID
SISTEMAS OPERATIVOS WINDOWS, LINUX, MACOS, ANDROID
C C
 
Android estructura del Sistema Operativo
Android estructura del Sistema OperativoAndroid estructura del Sistema Operativo
Android estructura del Sistema Operativo
Jesus Jimenez
 
Evolucion de los sistemas operativos
Evolucion de los sistemas operativos Evolucion de los sistemas operativos
Evolucion de los sistemas operativos
juanma Fontanet
 
Discos de estado solido
Discos de estado solidoDiscos de estado solido
Discos de estado solido
Inspirate Unaula
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidosVictor Reyes
 
Sistemas operativos por niveles y su definicion de cada una de las capas.
Sistemas operativos por niveles y su definicion de cada una de las capas.Sistemas operativos por niveles y su definicion de cada una de las capas.
Sistemas operativos por niveles y su definicion de cada una de las capas.
honeyjimenez
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
Tensor
 
Sistema de archivos
Sistema de archivosSistema de archivos
Sistema de archivos
mariavictoria0000
 
El disco duro trabajo power point
El  disco  duro  trabajo power pointEl  disco  duro  trabajo power point
El disco duro trabajo power pointspursua
 
Sistema Operativo Linux
Sistema Operativo LinuxSistema Operativo Linux
Sistema Operativo LinuxDiana
 
Sistemas operativos procesos
Sistemas operativos   procesosSistemas operativos   procesos
Sistemas operativos procesosayreonmx
 
Distribuciones de software libre
Distribuciones de software libreDistribuciones de software libre
Distribuciones de software libreJosé Salcedo
 

La actualidad más candente (20)

Cuadro Comparativo sobre Sistemas Operativos.
Cuadro Comparativo sobre Sistemas Operativos. Cuadro Comparativo sobre Sistemas Operativos.
Cuadro Comparativo sobre Sistemas Operativos.
 
Ensayo 2 sistemas operativos
Ensayo 2 sistemas operativosEnsayo 2 sistemas operativos
Ensayo 2 sistemas operativos
 
Linea de tiempo
Linea de tiempo Linea de tiempo
Linea de tiempo
 
Sistemas operativos centralizados
Sistemas operativos centralizadosSistemas operativos centralizados
Sistemas operativos centralizados
 
Blackberry OS
Blackberry OSBlackberry OS
Blackberry OS
 
La historia de los sistemas operativos
La historia de los sistemas operativosLa historia de los sistemas operativos
La historia de los sistemas operativos
 
Red HAT
Red HATRed HAT
Red HAT
 
SISTEMAS OPERATIVOS WINDOWS, LINUX, MACOS, ANDROID
SISTEMAS OPERATIVOS  WINDOWS, LINUX, MACOS, ANDROIDSISTEMAS OPERATIVOS  WINDOWS, LINUX, MACOS, ANDROID
SISTEMAS OPERATIVOS WINDOWS, LINUX, MACOS, ANDROID
 
Android estructura del Sistema Operativo
Android estructura del Sistema OperativoAndroid estructura del Sistema Operativo
Android estructura del Sistema Operativo
 
Evolucion de los sistemas operativos
Evolucion de los sistemas operativos Evolucion de los sistemas operativos
Evolucion de los sistemas operativos
 
Discos de estado solido
Discos de estado solidoDiscos de estado solido
Discos de estado solido
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Sistemas operativos por niveles y su definicion de cada una de las capas.
Sistemas operativos por niveles y su definicion de cada una de las capas.Sistemas operativos por niveles y su definicion de cada una de las capas.
Sistemas operativos por niveles y su definicion de cada una de las capas.
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
Sistema de archivos
Sistema de archivosSistema de archivos
Sistema de archivos
 
El disco duro trabajo power point
El  disco  duro  trabajo power pointEl  disco  duro  trabajo power point
El disco duro trabajo power point
 
Sistema Operativo Linux
Sistema Operativo LinuxSistema Operativo Linux
Sistema Operativo Linux
 
Diapositivas MAC
Diapositivas MACDiapositivas MAC
Diapositivas MAC
 
Sistemas operativos procesos
Sistemas operativos   procesosSistemas operativos   procesos
Sistemas operativos procesos
 
Distribuciones de software libre
Distribuciones de software libreDistribuciones de software libre
Distribuciones de software libre
 

Similar a Tecnologías que implementa facebook

Tecnologias detras de las Redes sociales
Tecnologias detras de las Redes socialesTecnologias detras de las Redes sociales
Tecnologias detras de las Redes sociales
Luis Miguel
 
Tecnologias redes sociales
Tecnologias redes socialesTecnologias redes sociales
Tecnologias redes sociales
Alexis Garcia
 
Big Data en FaceBook
Big Data en FaceBookBig Data en FaceBook
Big Data en FaceBook
Juan Frias
 
TECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION II
TECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION IITECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION II
TECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION II
Christian Garcia Gamio
 
SGBD y tecnologías de aplicaciones web 2.0
SGBD y tecnologías de aplicaciones web 2.0SGBD y tecnologías de aplicaciones web 2.0
SGBD y tecnologías de aplicaciones web 2.0
Karina Mantilla Macavilca
 
Tecnologia detras de las redes sociales
Tecnologia detras de las redes socialesTecnologia detras de las redes sociales
Tecnologia detras de las redes sociales
CharlieDS
 
SGBD Y TECNOLOGIAS USADAS POR APLICACIONES WEB 2.0
SGBD Y TECNOLOGIAS USADAS POR APLICACIONES WEB 2.0SGBD Y TECNOLOGIAS USADAS POR APLICACIONES WEB 2.0
SGBD Y TECNOLOGIAS USADAS POR APLICACIONES WEB 2.0
Jeremi Sixto Perales
 
sistema de gestor de bd y tecnologias utlizan Facebook, Twitter, youtube y Uber
sistema de gestor de bd y tecnologias utlizan Facebook, Twitter, youtube y Ubersistema de gestor de bd y tecnologias utlizan Facebook, Twitter, youtube y Uber
sistema de gestor de bd y tecnologias utlizan Facebook, Twitter, youtube y Uber
Juan Gabriel Valenzuela Quispe
 
Lp2
Lp2Lp2
Tecnologias y bd utilizados por sitios web
Tecnologias y bd utilizados por sitios webTecnologias y bd utilizados por sitios web
Tecnologias y bd utilizados por sitios web
JESUSFRANCISCOFLORES1
 
Tecnologías detrás de las redes sociales
Tecnologías detrás de las redes socialesTecnologías detrás de las redes sociales
Tecnologías detrás de las redes sociales
Katy Vega Pio
 
MySQL y XAMPP
MySQL y XAMPPMySQL y XAMPP
MySQL y XAMPP
FRANKLIN DAVILA TORRES
 
SGBD-TECNOLOGIA DE APLICACIONES WEB
SGBD-TECNOLOGIA DE APLICACIONES WEBSGBD-TECNOLOGIA DE APLICACIONES WEB
SGBD-TECNOLOGIA DE APLICACIONES WEB
kattia vargas
 
Sistema gestor de base de datos
Sistema gestor de base de datosSistema gestor de base de datos
Sistema gestor de base de datos
Paolo0714
 
Tecnologías detrás de las Redes Sociales
Tecnologías detrás de las Redes SocialesTecnologías detrás de las Redes Sociales
Tecnologías detrás de las Redes Sociales
Carmen Salinas Zavala
 
Redes sociales (tecnología)
Redes sociales (tecnología)Redes sociales (tecnología)
Redes sociales (tecnología)
Mirella Paico
 
Servidor MySQL
Servidor MySQLServidor MySQL
Servidor MySQL
Anny Silis Cx
 

Similar a Tecnologías que implementa facebook (20)

Tecnologías detrás de las redes sociales
Tecnologías detrás de las redes socialesTecnologías detrás de las redes sociales
Tecnologías detrás de las redes sociales
 
Tecnologias detras de las Redes sociales
Tecnologias detras de las Redes socialesTecnologias detras de las Redes sociales
Tecnologias detras de las Redes sociales
 
Tecnologias redes sociales
Tecnologias redes socialesTecnologias redes sociales
Tecnologias redes sociales
 
Exposicion
ExposicionExposicion
Exposicion
 
Big Data en FaceBook
Big Data en FaceBookBig Data en FaceBook
Big Data en FaceBook
 
TECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION II
TECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION IITECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION II
TECNOLOGIA DETRAS DE LAS REDES SOCIALES(FACEBOOK) - LENGUAJE DE PROGRAMACION II
 
SGBD y tecnologías de aplicaciones web 2.0
SGBD y tecnologías de aplicaciones web 2.0SGBD y tecnologías de aplicaciones web 2.0
SGBD y tecnologías de aplicaciones web 2.0
 
Tecnologia detras de las redes sociales
Tecnologia detras de las redes socialesTecnologia detras de las redes sociales
Tecnologia detras de las redes sociales
 
SGBD Y TECNOLOGIAS USADAS POR APLICACIONES WEB 2.0
SGBD Y TECNOLOGIAS USADAS POR APLICACIONES WEB 2.0SGBD Y TECNOLOGIAS USADAS POR APLICACIONES WEB 2.0
SGBD Y TECNOLOGIAS USADAS POR APLICACIONES WEB 2.0
 
sistema de gestor de bd y tecnologias utlizan Facebook, Twitter, youtube y Uber
sistema de gestor de bd y tecnologias utlizan Facebook, Twitter, youtube y Ubersistema de gestor de bd y tecnologias utlizan Facebook, Twitter, youtube y Uber
sistema de gestor de bd y tecnologias utlizan Facebook, Twitter, youtube y Uber
 
Lp2
Lp2Lp2
Lp2
 
Lp2
Lp2Lp2
Lp2
 
Tecnologias y bd utilizados por sitios web
Tecnologias y bd utilizados por sitios webTecnologias y bd utilizados por sitios web
Tecnologias y bd utilizados por sitios web
 
Tecnologías detrás de las redes sociales
Tecnologías detrás de las redes socialesTecnologías detrás de las redes sociales
Tecnologías detrás de las redes sociales
 
MySQL y XAMPP
MySQL y XAMPPMySQL y XAMPP
MySQL y XAMPP
 
SGBD-TECNOLOGIA DE APLICACIONES WEB
SGBD-TECNOLOGIA DE APLICACIONES WEBSGBD-TECNOLOGIA DE APLICACIONES WEB
SGBD-TECNOLOGIA DE APLICACIONES WEB
 
Sistema gestor de base de datos
Sistema gestor de base de datosSistema gestor de base de datos
Sistema gestor de base de datos
 
Tecnologías detrás de las Redes Sociales
Tecnologías detrás de las Redes SocialesTecnologías detrás de las Redes Sociales
Tecnologías detrás de las Redes Sociales
 
Redes sociales (tecnología)
Redes sociales (tecnología)Redes sociales (tecnología)
Redes sociales (tecnología)
 
Servidor MySQL
Servidor MySQLServidor MySQL
Servidor MySQL
 

Último

blog.pdf de coceptos de personalidad....
blog.pdf de coceptos de personalidad....blog.pdf de coceptos de personalidad....
blog.pdf de coceptos de personalidad....
JosvilAngel
 
5 CRITERIOS PARA EL DISEÑO DE DIAGRAMAS DE FLUJO.pptx
5 CRITERIOS PARA EL DISEÑO DE DIAGRAMAS DE FLUJO.pptx5 CRITERIOS PARA EL DISEÑO DE DIAGRAMAS DE FLUJO.pptx
5 CRITERIOS PARA EL DISEÑO DE DIAGRAMAS DE FLUJO.pptx
AlexanderCR12
 
WordPress training basics - básicos de cómo enseñar WordPress
WordPress training basics - básicos de cómo enseñar WordPressWordPress training basics - básicos de cómo enseñar WordPress
WordPress training basics - básicos de cómo enseñar WordPress
Fernando Tellado
 
Biografía Eugenio Díaz Castro su vida y su libros
Biografía Eugenio  Díaz Castro su vida y su librosBiografía Eugenio  Díaz Castro su vida y su libros
Biografía Eugenio Díaz Castro su vida y su libros
jhannimejia
 
Sistemas-de-Numeración-para-Primero-de-Secundaria.doc
Sistemas-de-Numeración-para-Primero-de-Secundaria.docSistemas-de-Numeración-para-Primero-de-Secundaria.doc
Sistemas-de-Numeración-para-Primero-de-Secundaria.doc
LuisEnriqueCarboneDe
 
EduLearnIAappde IAparatodosdisponible.pptx
EduLearnIAappde IAparatodosdisponible.pptxEduLearnIAappde IAparatodosdisponible.pptx
EduLearnIAappde IAparatodosdisponible.pptx
Elizabeth Mejia
 
10. Táctica y Estrategia en Fútbol autor Oscar Milton Rivas (1).pdf
10. Táctica y Estrategia en Fútbol autor Oscar Milton Rivas (1).pdf10. Táctica y Estrategia en Fútbol autor Oscar Milton Rivas (1).pdf
10. Táctica y Estrategia en Fútbol autor Oscar Milton Rivas (1).pdf
XxsmalXxYT
 
EXPERIENCIA PROYECTOS STARTUP JAVIER LASA
EXPERIENCIA PROYECTOS STARTUP JAVIER LASAEXPERIENCIA PROYECTOS STARTUP JAVIER LASA
EXPERIENCIA PROYECTOS STARTUP JAVIER LASA
Javier Lasa
 
ayuda en egresos exposición aps 1 grupal
ayuda en egresos exposición aps 1 grupalayuda en egresos exposición aps 1 grupal
ayuda en egresos exposición aps 1 grupal
jesusmedina766305
 
derecho penal busqueda de pruebas en el derecho penal peruano latinoamericano
derecho penal busqueda de pruebas en el derecho penal peruano latinoamericanoderecho penal busqueda de pruebas en el derecho penal peruano latinoamericano
derecho penal busqueda de pruebas en el derecho penal peruano latinoamericano
edwinchiri2
 
FISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIO
FISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIOFISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIO
FISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIO
DarwinNestorArapaQui
 
Estructuras b-sicas_ conceptos b-sicos de programaci-n.pdf
Estructuras b-sicas_  conceptos b-sicos de programaci-n.pdfEstructuras b-sicas_  conceptos b-sicos de programaci-n.pdf
Estructuras b-sicas_ conceptos b-sicos de programaci-n.pdf
edepjuanorozco
 
Los derechos de autor y Ética Profesional
Los derechos de autor y Ética ProfesionalLos derechos de autor y Ética Profesional
Los derechos de autor y Ética Profesional
bgonzalezm20
 
Presentación Arduino, proyecto colectivo
Presentación Arduino, proyecto colectivoPresentación Arduino, proyecto colectivo
Presentación Arduino, proyecto colectivo
juanlemus11122
 
SEGURIDAD INFORMATICA- Ariana Vicente Cruzatt
SEGURIDAD INFORMATICA- Ariana Vicente CruzattSEGURIDAD INFORMATICA- Ariana Vicente Cruzatt
SEGURIDAD INFORMATICA- Ariana Vicente Cruzatt
vicenteariana54
 
Clases de Informática primaria para niños de colegios católicos
Clases de Informática primaria para niños de colegios católicosClases de Informática primaria para niños de colegios católicos
Clases de Informática primaria para niños de colegios católicos
mcavero2019
 
Diapositiva Herramientas Web, Tema Web 3.0.pptx
Diapositiva Herramientas Web, Tema Web 3.0.pptxDiapositiva Herramientas Web, Tema Web 3.0.pptx
Diapositiva Herramientas Web, Tema Web 3.0.pptx
erick502105
 

Último (17)

blog.pdf de coceptos de personalidad....
blog.pdf de coceptos de personalidad....blog.pdf de coceptos de personalidad....
blog.pdf de coceptos de personalidad....
 
5 CRITERIOS PARA EL DISEÑO DE DIAGRAMAS DE FLUJO.pptx
5 CRITERIOS PARA EL DISEÑO DE DIAGRAMAS DE FLUJO.pptx5 CRITERIOS PARA EL DISEÑO DE DIAGRAMAS DE FLUJO.pptx
5 CRITERIOS PARA EL DISEÑO DE DIAGRAMAS DE FLUJO.pptx
 
WordPress training basics - básicos de cómo enseñar WordPress
WordPress training basics - básicos de cómo enseñar WordPressWordPress training basics - básicos de cómo enseñar WordPress
WordPress training basics - básicos de cómo enseñar WordPress
 
Biografía Eugenio Díaz Castro su vida y su libros
Biografía Eugenio  Díaz Castro su vida y su librosBiografía Eugenio  Díaz Castro su vida y su libros
Biografía Eugenio Díaz Castro su vida y su libros
 
Sistemas-de-Numeración-para-Primero-de-Secundaria.doc
Sistemas-de-Numeración-para-Primero-de-Secundaria.docSistemas-de-Numeración-para-Primero-de-Secundaria.doc
Sistemas-de-Numeración-para-Primero-de-Secundaria.doc
 
EduLearnIAappde IAparatodosdisponible.pptx
EduLearnIAappde IAparatodosdisponible.pptxEduLearnIAappde IAparatodosdisponible.pptx
EduLearnIAappde IAparatodosdisponible.pptx
 
10. Táctica y Estrategia en Fútbol autor Oscar Milton Rivas (1).pdf
10. Táctica y Estrategia en Fútbol autor Oscar Milton Rivas (1).pdf10. Táctica y Estrategia en Fútbol autor Oscar Milton Rivas (1).pdf
10. Táctica y Estrategia en Fútbol autor Oscar Milton Rivas (1).pdf
 
EXPERIENCIA PROYECTOS STARTUP JAVIER LASA
EXPERIENCIA PROYECTOS STARTUP JAVIER LASAEXPERIENCIA PROYECTOS STARTUP JAVIER LASA
EXPERIENCIA PROYECTOS STARTUP JAVIER LASA
 
ayuda en egresos exposición aps 1 grupal
ayuda en egresos exposición aps 1 grupalayuda en egresos exposición aps 1 grupal
ayuda en egresos exposición aps 1 grupal
 
derecho penal busqueda de pruebas en el derecho penal peruano latinoamericano
derecho penal busqueda de pruebas en el derecho penal peruano latinoamericanoderecho penal busqueda de pruebas en el derecho penal peruano latinoamericano
derecho penal busqueda de pruebas en el derecho penal peruano latinoamericano
 
FISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIO
FISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIOFISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIO
FISICA IMPRIMIR MATERIAL ACADEMICO NIVEL SECUNDARIO
 
Estructuras b-sicas_ conceptos b-sicos de programaci-n.pdf
Estructuras b-sicas_  conceptos b-sicos de programaci-n.pdfEstructuras b-sicas_  conceptos b-sicos de programaci-n.pdf
Estructuras b-sicas_ conceptos b-sicos de programaci-n.pdf
 
Los derechos de autor y Ética Profesional
Los derechos de autor y Ética ProfesionalLos derechos de autor y Ética Profesional
Los derechos de autor y Ética Profesional
 
Presentación Arduino, proyecto colectivo
Presentación Arduino, proyecto colectivoPresentación Arduino, proyecto colectivo
Presentación Arduino, proyecto colectivo
 
SEGURIDAD INFORMATICA- Ariana Vicente Cruzatt
SEGURIDAD INFORMATICA- Ariana Vicente CruzattSEGURIDAD INFORMATICA- Ariana Vicente Cruzatt
SEGURIDAD INFORMATICA- Ariana Vicente Cruzatt
 
Clases de Informática primaria para niños de colegios católicos
Clases de Informática primaria para niños de colegios católicosClases de Informática primaria para niños de colegios católicos
Clases de Informática primaria para niños de colegios católicos
 
Diapositiva Herramientas Web, Tema Web 3.0.pptx
Diapositiva Herramientas Web, Tema Web 3.0.pptxDiapositiva Herramientas Web, Tema Web 3.0.pptx
Diapositiva Herramientas Web, Tema Web 3.0.pptx
 

Tecnologías que implementa facebook

  • 2. HISTORIA DE FACEBOOK • Mark Zuckerberg creó Facebook en el periodo en que fue estudiante de la Universidad de Harvard. Cuando esta red social empezó a ganar en popularidad, Mark abandonó sus estudios en Harvard. La compañía actualmente tiene sus oficinas centrales en Menlo Park, California. En 2003 Zuckerberg lanzó en la universidad un sitio web llamado Facemash. donde reunía varias fotografías y nombres de estudiantes de Harvard, este sitio estuvo disponible solo por algunas horas y por este suceso fue llevado ante los directivos de la Universidad, quienes culparon a Mark por haber sustraído datos e imágenes del sistema informático de la institución; suspendieron a Mark de clases, quien luego se alejó de la universidad al año siguiente para crear Facebook
  • 3. HISTORIAS • A mediados de 2007 lanzó las versiones en francés, alemán y español traducidas por usuarios de manera no remunerada, principalmente para impulsar su expansión fuera de Estados Unidos, ya que sus usuarios se concentran en Estados Unidos, Canadá y Reino Unido. Facebook cuenta con más de 1350 millones de miembros, y traducciones a 70 idiomas. • Su infraestructura principal está formada por una red de más de 50 000 servidores que usan distribuciones del sistema operativo GNU/Linux usando LAMP. • En febrero de 2014 los responsables de Facebook anunciaron la compra del servicio de mensajería móvil WhatsApp por 16 000 millones de dólares. • El 9 de abril de 2012 se anunció que Facebook adquirió Instagram por 1000 millones de dólares.
  • 4. SISTEMA DISTRIBUIDO DE FACEBOOK • 1. Linux Aquí sería más preciso decir que se trata del ecosistema Linux, en particular de LAMP: • Linux, el sistema operativo que administrar los recursos de cada servidor en Facebook, • Apache, el servidor de páginas web, • MySQL, el manejador de bases de datos, el que almacena de forma estructurada los datos de los usuarios, • Y PHP, el lenguaje de programación que automatiza la creación de páginas web. • Facebook no sería posible sin Linux.
  • 5. CÓMO ESTÁ PROGRAMADO FACEBOOK? • El front end de Facebook se entrega principalmente a través de PHP (con cientos de bibliotecas personalizadas), que se ejecuta en algo similar o igual a HipHop para PHP (HHVM) • HHVM fue creado como el sucesor de la máquina de ejecución HipHop for PHP, el cual es un transpilador de PHP-a-C++, también creado por Facebook. • También hay algo de HTML5 y JavaScript en el front end para que puedas interactuar con el sitio constantemente sin tener que volver a cargar la página.
  • 6. HHCM • HHVM (conocido como HipHop Virtual Machine) es una máquina virtual de código abierto basado en compilador Just-in-Time (JIT), el cual sirve como un motor de ejecución para los lenguajes PHP y Hack. Usando el principio del compilador JIT, ejecuta código PHP o Hack en código Bytecode HipHop intermedio, el cual es entonces traducido en código máquina, optimizado, y ejecutado nativamente.
  • 7. HAYSTACK • El sistema de alto rendimiento desarrollado por Facebook para almacenar y recuperar objetos, utilizado por Facebook para almacenar y recuperar fotos. Hay (en junio de 2010) 20.000.000.000 de fotos en Facebook, cada una en 4 resoluciones distintas…. Además hay que tener en cuenta que de esas se recuperan 1.200.000 fotos cada segundo.
  • 8. BIGPIPE • Un sistema dinámico para servir páginas web (desarrollado por Facebook) que permite la división de cada página en sección (ellos los llaman “pagelets”) para optimizar su rendimiento. Cada sección de la página web se recupera por separado (y muchas ocasiones en paralelo) con la ventaja de si una parte de la web está desactivada o rota, el usuarios sigue viendo el resto sin problemas.
  • 9. CASSANDRA • Además de Facebook, sitios como Reddit y Twitter también usan Cassandra para almacenar los datos de los usuarios de forma estructurada y distribuida. Se dice que Cassandra pertenece a una segunda generación de bases de datos, a un paradigma llamado NoSQL. Facebook hizo público el código de Cassandra al tiempo que lo entregó a la comunidad Apache en el 2008. • Facebook no podría escalar sin Cassandra.
  • 10. CARACTERÍSTICAS DE CASSANDRA • Descentralizado • Todos los nodos del clúster tiene el mismo rol. No hay un único punto de fallo. Los datos se distribuyen a través del clúster (por lo que cada nodo contiene datos diferentes). No existe un nodo maestro por lo que cada nodo puede dar servicio a cualquier solicitud. • Soporta replicación y replicación de múltiples data center • Las estrategias de replicación son configurables .22 Cassandra está diseñado como un sistema distribuido, para el despliegue de un gran número de nodos a través de múltiples centros de datos. La arquitectura distribuida de Cassandra está diseñado para desplegarse sobre múltiples data center, tener redundancia y recuperarse ante desastres. • Escalabilidad • El rendimiento de leer y escribir aumenta linealmente a medida que se añaden nuevos nodos. Se pueden agregar nuevos nodos sin necesidad de interrumpir la ejecución de la aplicación. • Tolerancia a fallos • Los datos se replican automáticamente a múltiples nodos para recuperarse frente a fallos. Cassandra soporta replicación a través de múltiples datacenter. Se puede reemplazar nodos que presenten fallos sin tiempo de inactividad o interrupción de la aplicación.
  • 11. HADOOP Y HIVE • Hadoop es un sistema que permite realizar cálculos sobre cantidades ingentes de datos. Facebook lo utiliza para las estadísticas. Hive está desarrollado por Facebook y permite ejecutar consultas SQL contra Hadoop. Ambos proyectos son open-source y se usan en multitud de sitios webs grandes como Yahoo y Twitter • Este es un proyecto auspiciado por la Fundación Apache. Entre sus varias funcionalidades destaca una fundamental para Facebook: el análisis de grandes conjuntos de datos sobre los cuales es posible inquirir, buscar información en ellos. • Facebook no podría ofrecer su servicio de búsqueda sin Hive.
  • 12. THRIFT • Podría decirse que Thrift es un kit de herramientas, uno especializado en la interoperabilidad de lenguajes de programación. A través de Thrift Facebook ha combinado el uso de lenguajes tan distintos entre sí como C++, Java, Python, PHP, Ruby, Haskell, y más, a lo largo de todos sus equipos de desarrollo. • Facebook no podría crear servicios de software a la velocidad que requiere sin la ayuda de Thrift.
  • 13. VARNISH • Es un acelerador HTTP que puede actuar como distribuidor de cargas y que también puede cachear contenido que puede ser servido de forma espectacularmente rápida. Facebook usa Varnish para mostrar fotos y fotos de perfil, con una carga de miles de millones de peticiones diarias.
  • 14. SCRIBE • Lo que hace Scribe es muy sencillo: es un sistema de distribución y registro de mensajes en los servidores, tolerante a fallas y capaz de funcionar sobre una gran cantidad de equipos. • Facebook gestiona con mayor facilidad sus miles de servidores gracias a Scribe.
  • 15. ALMACENAMIENTO • Facebook cuenta con almacenamiento de datos único y tiene problemas de acceso que nadie más en el mundo tiene. Por lo tanto, tenemos sistemas de nadie más en el mundo tiene, y nadie más en el mundo debería estar al tanto de cómo funcionan a menos que trabajen en ellos dicho esto, diseñamos un montón de nuestro propio hardware (véase el Open Compute Project, iniciado por FB) para ser lo más eficiente y rentable posible. Utilizamos balanceadores de carga para asegurarnos de que las máquinas que están libres asuman más carga. Si el equipo se cae, se pone un repuesto -Chris Scholz, un Ingeniero de Sistemas que trabaja para Facebook
  • 16. BALANCEADOR DE CARGA • Un Balanceador de carga fundamentalmente es un dispositivo de hardware o software que se pone al frente de un conjunto de servidores que atienden una aplicación y, tal como su nombre lo indica, asigna o balancea las solicitudes que llegan de los clientes a los servidores usando algún algoritmo (desde un simple round-robin hasta algoritmos más sofisticados)
  • 17. OPEN COMPUTE PROJECT • El proyecto OCP (Open Compute Project) tiene la misión de diseñar el servidor más eficaz para el almacenamiento de datos de la llamada informática escalable. Todos los centros de datos de la compañía Facebook son 100% de OCP.
  • 18. CENTROS DE DATOS DE FACEBOOK • Central de Prineville en Oregon • El centro de Prineville en Oregon, es un gigante eficaz de ahorrar el 52% de energía en comparación con otra instalación similar. Fue construido con 950 kilómetros de cable.
  • 19. A GRANJA DE SERVIDORES DE FACEBOOK EN LULEA, SUECIA • 27.000 metros cuadrados • Equivalente a 6 estadios de futbol