Sí, Facebook es una aplicación monolítica.
Encontré este artículo en facebook:
[205] Facebook se desarrolla como una aplicación monolítica. Según una entrevista en 2012 con Chuck Rossi, un ingeniero de construcción en Facebook, Facebook compila en un blob binario de 1,5 GB que luego se distribuye a los servidores utilizando un sistema de lanzamiento personalizado basado en BitTorrent. Rossi declaró que lleva aproximadamente 15 minutos construirlo y 15 minutos lanzarlo a los servidores. El proceso de compilación y lanzamiento es cero tiempo de inactividad y nuevos cambios en Facebook se implementan diariamente. [205] Facebook utilizó una plataforma combinada basada en HBase para almacenar datos en máquinas distribuidas. Usando una arquitectura de seguimiento, los nuevos eventos se almacenan en archivos de registro, y los registros se siguen. El sistema acumula estos eventos y los escribe en el almacenamiento. La interfaz de usuario extrae los datos y los muestra a los usuarios. Facebook maneja las solicitudes como comportamiento AJAX. Estas solicitudes se escriben en un archivo de registro utilizando Scribe (desarrollado por Facebook). [206] Los datos se leen de estos archivos de registro utilizando Ptail, una herramienta internamente construida para agregar datos de múltiples tiendas Scribe. Sigue los archivos de registro y extrae los datos (de ahí el nombre). Los datos de Ptail se separan en tres flujos para que eventualmente se puedan enviar a sus propios clústeres en diferentes centros de datos (Impresión de complemento, Impresiones de noticias, Acciones (complemento + fuente de noticias)). Puma se usa para administrar períodos de alto flujo de datos (Entrada / Salida o IO). Los datos se procesan en lotes para disminuir la cantidad de veces que se necesita leer y escribir en períodos de alta demanda (un artículo caliente generará muchas impresiones e impresiones de noticias que causarán grandes sesgos de datos). Los lotes se toman cada 1.5 segundos, limitados por la memoria utilizada al crear una tabla hash. [206] Después de esto, los datos se envían en formato PHP (compilado con HipHop para PHP). El backend está escrito en Java y Thrift se usa como formato de mensajería para que los programas PHP puedan consultar los servicios de Java. Las soluciones de almacenamiento en caché se utilizan para hacer que las páginas web se muestren más rápidamente. Cuantos más datos se almacenen en caché, menos tiempo real será. Los datos se envían a los servidores de MapReduce para que se puedan consultar a través de Hive. Esto también sirve como un plan de respaldo ya que los datos se pueden recuperar de Hive. Los registros sin procesar se eliminan después de un período de tiempo. [206] Botón Me gusta El botón Me gusta es una función de red social que permite a los usuarios expresar su aprecio por el contenido, como actualizaciones de estado, comentarios, fotos y anuncios. También es un complemento social de la Plataforma de Facebook, lanzado el 21 de abril de 2010 [207] [208], que permite que los sitios web de Internet participantes muestren un botón similar. Luego de la terminación por parte del sheriff de Hampton, Virginia, EE. UU. De empleados a los que les gustó la página de Facebook de un adversario, un tribunal federal de apelaciones de Virginia dictó una decisión según la cual la Constitución de EE. UU. Protege los derechos de los ciudadanos estadounidenses a que les guste cualquier página de Facebook de sus elegir. El juez de circuito estadounidense William Traxler comparó la práctica con mostrar un “letrero político en el patio delantero de uno”. [209] Las patentes de demanda relacionadas con el botón “Me gusta” y otras características sociales en poder del programador holandés fallecido Joannes Jozef Everardus van Der Meer son objeto de una demanda presentada contra Facebook por Rembrandt Social Media. [76] [210] Rembrandt está representado por la firma de abogados Fish & Richardson que declaró “Creemos que las patentes de Rembrandt representan una base importante de las redes sociales tal como la conocemos, y esperamos que un juez y un jurado lleguen a la misma conclusión basada en la evidencia”. A partir del 2 de abril de 2013,
- Si pudieras crear una aplicación para ti que actualmente no está en el mercado, ¿cuál sería?
- Cómo construir una aplicación web express usando Parse Cloud Code
- ¿Debo diseñar la aplicación móvil primero y luego la aplicación web?
- ¿Se debe crear una aplicación móvil directamente o un sitio web primero?
- ¿Es mejor promover la idea de mi aplicación antes de construirla?