¿Puede Laravel manejar aplicaciones de alto tráfico?

Estoy trabajando en un proyecto de red social PHP / MySQL que constará de muchos módulos / secciones que incluyen:

  • Sistema de usuario (permisos, perfiles, ajustes, etc …)
  • Insignia de estilo stackoverflow y sistema de puntos de reputación.
  • Muro / flujo de publicaciones de amigos
  • foros
  • sistema de mensajes
  • portafolio
  • Blog
  • fragmentos de código
  • marcadores
  • y varias otras secciones …

Originalmente, había planeado construir todo utilizando el marco Laravel, ya que es simplemente increíble y también hace un montón de trabajo.

Pero ahora estoy cuestionando eso. No he comenzado ningún código todavía, así que no es un factor en la decisión.

Además, mi tiempo que lleva construir cualquier parte del sitio / aplicación no supera el rendimiento.

Entonces, si Laravel conduce a menos rendimiento en comparación con la construcción desde cero, pero ahorra una tonelada de tiempo. Entonces preferiría dedicar un montón de tiempo extra a la construcción si eso significa un mejor rendimiento y un mejor rendimiento a largo plazo.

En 2006, construí una red social híbrida de MySpace y Facebook y no usé un marco. Me dio el 100% de control de cada aspecto de todo y un mayor rendimiento, ya que pude realmente ajustar y optimizar todo a medida que mi red crecía en tamaño y tráfico. ¿Creo que pierde algo de esa capacidad de optimización de bajo nivel cuando usa un marco grande?

Mi pregunta podría fácilmente confundirse con una pregunta basada en la opinión. Hasta cierto punto, sin embargo, su núcleo debe ser legítimo en la medida en que, en teoría, sería la mejor ruta si el rendimiento es la prioridad en el tiempo para construir.

Solo he creado una aplicación de bajo tráfico con un marco como Laravel, por lo que no tengo experiencia en la creación de una aplicación de alto tráfico con un marco como Laravel, por lo que no sé qué tan bien se comportan en comparación con un marco.

Todas mis aplicaciones de alto tráfico han sido sin un marco.

Basado en el tipo de módulos / secciones que enumeré anteriormente. ¿Puede Laravel manejar este tipo de aplicaciones en un alto nivel de tráfico y de gran escala?

Esta pregunta es un poco vaga: para empezar, ¿cuál es su definición de alto tráfico?

En el lugar donde trabajo, ejecutamos una combinación de código construido desde el principio y áreas que son atendidas por una aplicación de laravel (esto está incrustado en el sitio principal y sirve tanto tráfico como el rest del código de la aplicación anterior).

No se ha producido una ralentización en las áreas creadas con laravel (se utilizan las mismas fonts de base de datos y se ejecuta en los mismos servidores web, por lo que es útil para evaluar).

Advertencias:

El código original creado a mano es más antiguo y no siempre aprovecha los métodos y tipos de diseño más nuevos de PHP. Esto significa que no es tan eficiente como podría ser. Luego, tiene la sobrecarga con la laravel haciendo cosas que quizás no siempre necesite o quiera hacer.

Resumiendo

Todo se reduce a hacer una maqueta de lo que cree que sería la parte más pesada de su aplicación dentro de la plataforma, y ​​luego nuevamente con un código personalizado personalizado. Luego prueba la mierda fuera de ella.

Lo más probable es que encuentre que el (buen) trabajo hecho a mano será más rápido. ¿Vale la pena esos milisegundos? Bueno, eso se reduce a la elección personal. Laravel es más que capaz de manejar grandes volúmenes de tráfico, pero seguro, puede ahorrar un poco de tiempo al no usarlo.

¿Qué tan importante es eso para lo que estás haciendo? Si algo lo está ralentizando y le está causando problemas dentro de Laravel, cámbielo. Es de código abierto después de todo.

Para referencia (depende de usted si cuenta esto como alto tráfico o no, lo haría):

Este es un SASS con sede en el Reino Unido que generalmente sirve a los visitantes del Reino Unido. A las 9 pm de esta noche (el viernes por la noche, en realidad uno de nuestros momentos más tranquilos) actualmente tenemos alrededor de 250,000 sesiones activas de PHP.

El sistema se sirve a través de 6 servidores web [para redundancia, cargas de tráfico, etc.] (carga equilibrada) para la aplicación PHP.