Una mejor manera sería poner esta tarea en segundo plano y lejos del servidor web.
PHP se basa en solicitudes y debe finalizar esas solicitudes lo antes posible.
Lo que debe hacer es ejecutar PHP en la línea de comandos, reutilizar su código o reescribirlo en un lenguaje más adecuado. De esa manera no hay límite en cuanto tiempo puede funcionar.
- ¿Cuál es el concepto de un diseño de página web?
- ¿Cuál es el mejor programa de tutoría de Ruby on Rails?
- ¿Cuáles son algunos buenos usos para cPanel?
- Cómo insertar un botón en una imagen en HTML-5
- ¿Debo codificar páginas de WordPress desde cero o usar páginas de WordPress?
Sin embargo, la mejor solución, la prueba más estable y más futura sería implementar una cola. Parece que está procesando “algo” que tiene un índice y no tiene una relación inmediata con el siguiente elemento. Entonces, si llena esos elementos en una cola, que puede ser solo una tabla de base de datos o, por ejemplo, RabbitMQ, no solo puede automatizarlo procesando las cosas a medida que ingresan, sino también procesarlas en paralelo y tal vez reducir el largo tiempo de ejecución.
Editar: si tiene que recogerlo como lo describe y no puede implementar ninguna de las otras soluciones debido a restricciones en el entorno, entonces creo que la solución que eligió, guardando un puntero al siguiente elemento, parece buena.