 Es frecuente que en las aplicaciones  existan procesos «pesados» y por lo tanto «lentos» que deseamos que los usuarios no los puedan ejecutar varias veces en un periodo corto de tiempo o que estos procesos se ejecuten de uno en uno, para no sobrecargar el servidor, y así seguir dando buen tiempo de respuesta al resto de procesos y usuarios.
Es frecuente que en las aplicaciones  existan procesos «pesados» y por lo tanto «lentos» que deseamos que los usuarios no los puedan ejecutar varias veces en un periodo corto de tiempo o que estos procesos se ejecuten de uno en uno, para no sobrecargar el servidor, y así seguir dando buen tiempo de respuesta al resto de procesos y usuarios.
También, nos puede surgir el mismo problema cuando queremos que un recurso de nuestro sistema sólo esté accedido por un único proceso, quedándose a la espera de ser liberado para el resto de procesos que requieran ese recurso.
Algunos ejemplos que pueden requerir esta gestión de proceso único, son:
- La recarga o copia de información desde otro sistema (proceso batch masivo).
- Copia de seguridad de datos o copia de respaldo de backup previos
- Elaboración de informes muy pesados. Procesos de cierre o reconfiguración del sistema.
- Utilización de un recurso del server (fichero, puerto serie, USB, certificado digital, etc.)
- Etc.
Objetivo
Disponer de una lógica, en los proyectos desarrollados en PHPRunner, para controlar:
- Que un proceso específico sólo este en ejecución una única vez y el resto de peticiones que concurran las rechace el sistema.
- Que un proceso específico sólo este en ejecución una única vez y que el resto de peticiones concurrentes se encolen y se liberen según el orden de llegada (cola FIFO).
DEMO: https://fhumanes.com/single_execution/
Si te interesa este tema y deseas obtener el código, cliquea aquí para acceder al artículo
 
		 He estado esperando para ver si en la nueva versión de
 He estado esperando para ver si en la nueva versión de 
 Esta es otra versión del
Esta es otra versión del