¿Debería usarse PHP para un sitio web grande y complejo?

PHP es una buena herramienta para construir sitios web muy grandes y muy complicados. Con el almacenamiento en caché de Opcode integrado en PHP en estos días, así como las vastas mejoras de rendimiento con PHP7, y la implementación de una aplicación en la nube donde puede escalar en cuestión de minutos, PHP no será lo que lo desacelerará.

En lo que respecta al lenguaje, surgirán problemas de escala en términos de mantenibilidad. Si no elige un buen marco para construir su aplicación, este se convertirá en su mayor problema en el futuro. Por esa razón, considere marcos como Symfony, Laravel y el infierno, incluso Zend.

Otros factores que causarán problemas antes del idioma también serían la base de datos. Puede escalar el número y el tamaño de los servidores de aplicaciones web que ejecuta, teóricamente, infinitamente. Pero las bases de datos relacionales, no tanto. Por lo tanto, asegurarse de diseñar un buen esquema relacional (3NF) ayudará, además de tener medidas para luego considerar el fragmentación o agrupamiento. Incluso podría considerar optar por una solución NoSQL como MongoDB.

El lenguaje no es lo que te detendrá en lo que respecta a la escala. Concéntrese en todos los demás problemas y use lo que le resulte más cómodo.

PHP está bien para casi cualquier escala o complejidad. Nombra cualquier idioma y puedes encontrar un campo de blogs que proclama todo lo que le falta.

La arquitectura de su código es mucho más determinante del rendimiento de su sitio que su idioma. Evite las dificultades comunes, como no diseñar para varios servidores web o no implementar el almacenamiento en caché desde el principio (Redis).

Además, cree para múltiples bases de datos de lectura desde el principio, incluso si no tiene una. Simplemente use una segunda conexión con un usuario de solo lectura. Si en cambio planea usar NoSql como Mongo sobre MySql, entonces pase mucho tiempo pensando en el esquema. Hay un esquema, pero está en su código, y puede hacer que la indexación y la búsqueda sean muy difíciles si se realiza incorrectamente.

Node tiene algunas buenas ventajas, como tener un buen soporte de websocket, que es ideal para actualizaciones push. Pero puede construir eso como un servicio si lo necesita más adelante.

¿Grande? Sí. ¿Complejo? ¡Sí! Básicamente con la infraestructura actual que tenemos a nuestro alcance, puede crear fácilmente una con cualquier idioma. Comience con un servidor mínimo y asegúrese de tener al menos un servidor diferente para aplicaciones y una base de datos para futuras escalas. Si alguna vez necesitas ayuda para escalar tu aplicación, no dudes en enviarme un mensaje 😉

Sugiero ir a php ya que php es el único lenguaje que siento con las menores limitaciones.

Aún así, si encuentra alguna limitación o problema, busque javascript y jquery y ajax

En lo que respecta al tráfico, Facebook hoy tiene aproximadamente el tráfico más alto registrado diariamente y por hora y está construido en PHP.

Para el tráfico, debe preocuparse por un buen servidor por completo. U también puede obtener un servidor dedicado.

Usted ha mencionado el sitio web sobre aspectos de las redes sociales y el almacenamiento de una gran cantidad de datos de los usuarios, para eso podría necesitar una base de datos Oracle en lugar de mi sql

Facebook está construido sobre PHP. ¿Es grande y complejo?
Udemy y CourseHero también usan PHP.
No estoy tan familiarizado con esto último, pero Udemy definitivamente tiene millones de visitas todos los días.

Con el uso de frameworks como Symfony2, construir sitios grandes y complejos con PHP es más que posible.

No olvide que PHP es prácticamente el primer lenguaje diseñado para el desarrollo web. Todavía hay una gran comunidad detrás de esto.

PHP solo podría no ser una buena opción, pero con un marco sólido es una opción. Conozco muchos proyectos grandes construidos o construidos con Symfony, Laravel, Zend, etc.

Nuestra elección es Symfony2 y las razones detalladas se pueden encontrar aquí: Guest Post por Ivo Lukač, Netgen

Se puede usar cualquier idioma, pero asegúrese de que la mayoría de su contenido esté en caché ya que demasiadas partes de trabajo ralentizarán su sitio.