¿Cuál es la pila de tecnología de Medium?

Voy a probar esto principalmente en función de la información en su página de trabajos:

La aplicación tech: main es node.js con nginx. También usan Java , uno podría adivinar cosas pesadas de computación. Redis también se usa, probablemente para recomendaciones / feeds de recolección. Medium depende en gran medida de los servicios de AWS, ya que utilizan EC2 , EBS , S3 , Route53 , EMR , DynamoDB , SQS , CloudFront y SES . Todos sus activos se sirven a través de CloudFront.

En el front-end, supongo que construyeron su propio marco JS. El editor WYSIWYG, la página de estadísticas, etc., me lleva a creer que no fue de un marco preexistente. En cuanto a la tecnología, usan Closure y LESS .

Saltando al servidor, creo que están usando su propio marco MVC llamado Matador, que abrieron de fuente hace un tiempo: Medio / matador

El autor de la pregunta me preguntó sobre la velocidad, así que hice algunas excavaciones para averiguar qué había debajo del capó. Resulta que, cuando navegas en Medium, nunca vas a una página nueva . Medium simplemente carga la ‘página’ en un nuevo div en el contenedor, establece la página anterior en ‘display: none’ y actualiza la URL y el título.

Dentro de cada uno de estos div hay un que contiene el contenido de la página. Muy inteligente. Aún mejor, al presionar el botón Atrás, Medium simplemente muestra el antiguo div, en lugar de crear uno nuevo. Pruébelo usted mismo: ir a una página anterior es increíblemente rápido. También parece haber un tiempo de espera en estas ‘páginas’. Después de 5-10 minutos más o menos, se eliminan para mantener un DOM ordenado.

En general, la sólida ejecución front-end de Medium conduce a una experiencia de usuario realmente agradable.

Fuentes:

  1. Ingeniero de Infraestructura – Trabajar en Medio
  2. Ingeniero Dev Ops – Trabaja en Medio
  3. Ingeniero de Front End – Trabajar en medio
  4. La fuente, Luke.

Jackson Mohsenin describió correctamente la mayoría de nuestra pila, lo cual es correcto, puede encontrarlo mencionado en nuestras páginas de trabajo.

Dan Pupius (uno de nuestros ingenieros de FE que trabaja en Medium) publicó recientemente una publicación sobre Aplicaciones de una sola página. Discute en profundidad cómo usamos el estado de empuje para acelerar el extremo frontal de Medium sin perder la optimización del motor de búsqueda o romper el botón de retroceso: Rise of the SPA

Respuesta de @jmohsenin a ¿Cuál es la pila de tecnología de Medium? da una respuesta muy detallada
Citando directamente:

La aplicación tech: main es node.js con nginx. También usan Java , uno podría adivinar cosas pesadas de computación. Redis también se usa, probablemente para recomendaciones / feeds de recolección. Medium depende en gran medida de los servicios de AWS, ya que utilizan EC2 , EBS , S3 , Route53 , EMR , DynamoDB , SQS , CloudFront y SES . Todos sus activos se sirven a través de CloudFront.

En el front-end, supongo que construyeron su propio marco JS. El editor WYSIWYG, la página de estadísticas, etc., me lleva a creer que no fue de un marco preexistente. En cuanto a la tecnología, usan Closure y LESS .

Saltando al servidor, creo que están usando su propio marco MVC llamado Matador, que abrieron hace un tiempo: MVC Framework for Node.

El autor de la pregunta me preguntó sobre la velocidad, así que hice algunas excavaciones para averiguar qué había debajo del capó. Resulta que, cuando navegas en Medium, nunca vas a una página nueva . Medium simplemente carga la ‘página’ en un nuevo div en el contenedor, establece la página anterior en ‘display: none’ y actualiza la URL y el título.

Dentro de cada uno de estos div hay un que contiene el contenido de la página. Muy inteligente. Aún mejor, al presionar el botón Atrás, Medium simplemente muestra el antiguo div, en lugar de crear uno nuevo. Pruébelo usted mismo: ir a una página anterior es increíblemente rápido. También parece haber un tiempo de espera en estas ‘páginas’. Después de 5-10 minutos más o menos, se eliminan para mantener un DOM ordenado.

En general, la sólida ejecución front-end de Medium conduce a una experiencia de usuario realmente agradable.

Fuentes:

  1. Ingeniero de Infraestructura – Trabajar en Medio
  2. Ingeniero Dev Ops – Trabaja en Medio
  3. Ingeniero de Front End – Trabajar en medio

Haré todo lo posible para agregar a las excelentes respuestas que ya están en esta página. Los productos que componen la pila tecnológica de Medium incluyen: Amazon Elastic Block Store (EBS), Algolia, CloudFlare, CSC Domain Registration, DigiCert, Grunt y nginx.

Además, aquí hay una lista de otros productos de software que Medium está usando internamente:

  • Marketing: Amazon SES, Embedly, Google Apps for Work, SendGrid
  • Productividad: holgura, conozca su empresa

(Descargo de responsabilidad: los datos anteriores se obtuvieron de Siftery y han sido verificados por personas que trabajan en Medium)

El front-end es más o menos Javascript y HTML.

Bromas aparte, puedes aprender un poco sobre su pila de tecnología visitando su página de trabajos. (Trabajar en medio)

Para el front-end, parece que están usando Closure, LESS y la aplicación en sí está diseñada como una aplicación de una sola página.

En la infraestructura y el backend, parecen estar usando Cassandra o DynamoDB junto con una colección de tecnología que incluye node.js, go, nginx y redis. Además, consulte lo siguiente según una de sus ofertas de trabajo.

  • Nginx para equilibrio de carga
  • Node.js y Go para la capa de aplicación
  • Amazon DynamoDB, S3 y Redshift para almacenamiento persistente
  • Redis para el almacenamiento en caché
  • Amazon SQS para desacoplar componentes de back-end
  • GitHub para control de versiones de software
  • Canal para la entrega de registros
  • Python y Bash para herramientas de operaciones de scripting

Aclamaciones.

Medio ya que cada gran empresa está en constante evolución.

Si está interesado en esto, su ingeniero principal escribió un muy buen artículo sobre lo que usaron y usan actualmente, obviamente en un medio: La pila que ayudó al medio a manejar 2.6 milenios de tiempo de lectura

Los principales servidores de aplicaciones todavía están escritos en Node y el db principal sigue siendo Dynamo DB

Medium usa AWS y creo que usan el compilador DynamoDB, NodeJS y Closure, como se puede ver en su perfil GitHub Medium

Tienen su propio marco MVC para Node llamado Matador. También parece que usan Golang para algunos de sus servicios.

Medium es una plataforma de publicación de blogs. Fue fundada por los cofundadores de Twitter Evan Williams y Biz Stone en agosto de 2012.

La plataforma se ha convertido en un híbrido de contribuciones no profesionales y contribuciones profesionales pagadas, un ejemplo de periodismo social.

Esa página realmente no te ayuda a conocer la “pila de tecnología” de Medium. Consulte esta pregunta para obtener una mejor respuesta: ¿Cuál es la pila de tecnología de Medium?

Aquí encontrará todo lo que necesita saber MEDIUM.COM Technology Profile en BuiltWith

Parece que el Jefe de Ingeniería de Medium ha escrito sobre esto en detalle en Stackshare.

Agregándolo aquí ya que debería ser una respuesta definitiva a esta pregunta junto con la excelente aquí.