¿Es mejor Node.js o Python para un sitio web de alto tráfico? ¿Y por qué?

Hay una gran diferencia entre ideal y realidad.

Abordaré la realidad, más que el ideal. El idioma que debe usar para crear su sitio web de alto tráfico es el que le resulta más familiar y cómodo. Crear proyectos es emocionante y desafiante. En un idioma en el que no está tan avanzado, es más probable que simplemente no conozca otros métodos superiores.

Al principio, es genial tener las mejores intenciones, pero también es la más fácil. Es como las personas que hacen las resoluciones de año nuevo para hacer ejercicio, luego lo hacen solo durante 2 semanas antes de darse por vencido. Es igual de fácil hacerlo en código. Probablemente mi foto favorita relacionada con la programación y los proyectos es:

Empiezas y haces una hermosa casa. Luego desea agregarle o corregir errores y, antes de darse cuenta, es un desastre masivo.

La mejor manera de evitar el desorden es ir con un lenguaje y un marco que comprenda mejor, para que pueda manejar más fácilmente los increíbles desafíos de un sitio web en crecimiento a tiempo.

Usted mencionó que usará sockets web, por lo que supongo que se trata de conexiones en tiempo real. Node-JS es perfecto para este tipo de conexiones en tiempo real debido a su arquitectura asíncrona de bucle de eventos. Debido a esto, puede que las conexiones en tiempo real sean realmente fáciles. Además, las preformas Node-JS son realmente excelentes en tráfico alto en comparación con otros lenguajes como Python. Siempre que conozca ambos idiomas igualmente bien, Node.js tiene ventajas significativas sobre Python.

En realidad, no puede optimizar de manera extrema un sitio web simplemente reescribiéndolo en otro idioma, a menos que esté dispuesto a escribirlo en C ++. Si yo fuera tú, elegiría el que me hace sentir mejor, y sé más que el otro. Es más fácil escribir un código óptimo si conoce todos los consejos y secretos del lenguaje. Después de todo, los sitios web de tráfico extremo tienen más que ver con el almacenamiento en caché o la escritura de partes críticas en lenguajes compilados, que con algunas diferencias en el código interpretado. Ah, y si decides usar Python, considera ejecutarlo en PyPy, es muchas veces más rápido que CPython.

Espero que esto ayude, ¡y buena suerte con tu sitio web!
Greg

Hay una compensación. NodeJS con Socket.IO es realmente muy simple de configurar, pero escalar horizontalmente puede ser un desafío. Python es más difícil de configurar, pero ofrece más modelos a escala.

Esta es una respuesta en modo “mis 5 centavos”:

La elección entre estos dos depende de la carga operativa del lado del servidor y la carga operativa del lado del cliente. Si su aplicación es principalmente del lado del servidor de datos serios en movimiento o tipo de cálculo intenso, Python podría ser mejor. Y si las características del lado del cliente tienen más peso, Node.js podría ser más fácil (por lo que escuché de mis colegas, ya que no tengo experiencia personal al respecto.

More Interesting

¿Cuáles son los problemas legales relacionados con el 'auto-plagio' en la programación?

Cómo acelerar el tiempo de carga de una página web con muchas imágenes

¿Cómo reanuda la reproducción bandcamp después de volver a abrir la página en Chrome?

¿Cuál es el diseño de la aplicación Spring MVC hibernate?

¿Podría alguien explicar Spring MVC con la siguiente foto?

¿Hay alguna manera de que pueda subprocesar un documento HTML? Me gustaría que se procesara lo más rápido posible.

¿Las principales empresas de Internet utilizan herramientas de desarrollo web como Dreamweaver para construir sitios mediante arrastrar y soltar o codifican desde cero utilizando JS y HTML?

Cómo hacer una copia de seguridad / restaurar Drupal

¿Cómo integrar Firebase con una aplicación Rails y Angular 2 existente? ¿Cuáles son los posibles casos de uso para esta integración?

Cómo crear una página 'próximamente' para WordPress mientras construyo mi sitio

¿Puedo desarrollar una red social sin SQL usando Python y Django?

Quiero comenzar un sitio web de comparación de precios, pero ¿cómo obtener los datos de los productos con su precio para agregar mi sitio desde otros sitios como Flipkart, Amazon o Ebay?

Desarrollé el sitio web de Preguntas y Respuestas, ¿qué debo hacer para ponerlo en línea y trabajar eficientemente como quora?

¿Cuáles son los mejores servicios de mapas de calor gratuitos o de bajo costo para las pruebas de usuario?

¿Qué lenguajes de programación debo usar para crear un sitio web?