En primer lugar, PHP, que es un lenguaje de programación de back-end, utiliza muchos recursos del servidor para representar su sitio web, puede verificar aquí [1] para realizar un seguimiento del consumo de memoria de su programa / sitio web PHP. El servidor es igual que su PC: tiene una CPU y una memoria principal, si ejecuta un bucle sin fin en su computadora / servidor, se ejecutará hasta que se consuma todo el espacio de memoria disponible y luego detendrá o bloqueará la computadora, luego el La computadora puede reiniciarse.
En su servidor, si está utilizando un servidor compartido, como este [2], lo que significa que está compartiendo su servidor con otros clientes de su empresa de alojamiento, por ejemplo, se le asignará un cierto tamaño de espacio web, si ejecuta un bucle interminable en este tipo de espacio web se ejecutará hasta que se consuma toda la memoria. Digamos, por ejemplo, un bucle = una visita de usuario y en una situación en la que 20G de espacio web pueden acomodar 25,000 visitas de usuario. Luego, el bucle se ejecutará 25,000 veces antes de que el servidor falle o antes de que su sitio se cierre. Dado el rápido ritmo al que las computadoras de hoy en día con poderosos procesadores Intel ejecutan bucles, el bloqueo / apagado / reinicio de su servidor puede ocurrir dentro de unos minutos, digamos 5 minutos, si esto sucede constantemente, cada 5 minutos será bloqueado por su empresa de alojamiento o ser contactado por ellos para corregir un error en su sitio. Un bucle sin fin es esencialmente un error y no debe permitirse ni jugarse en un entorno de producción de ninguna manera.
Notas al pie
[1] memory_get_usage – Manual
- Además de crear una API y su implementación, ¿cuál es el conocimiento más importante que necesita saber para convertirse en un desarrollador de back-end?
- ¿Qué proyecto sugeriría hacer para que un desarrollador de back-end lo practique?
- ¿Cuál es el mejor marco de back-end para un desarrollador con un fondo PHP / JS / C #?
- ¿Podría usar Node.js como back-end de un sitio web?
- Me ofrecieron un trabajo de ingeniería de software con opciones de hacer trabajos de backend o Android. ¿En cuál debería centrarme?
[2] Alojamiento web diseñado para el mejor rendimiento y satisfacción del sitio web