Qual'è il limite di tempo massimo di esecuzione dello script impostato? (http://php.net/manual/it/function.set-time-limit.php) Controlla inoltre i tuoi logs: c'è qualche errore dovuto al fatto che hai raggiunto il limite massimo di memoria disponibile? Cosa fa calculate_value()?
Il tuo web server inoltre può giocare un ruolo in tutto questo. A seconda della configurazione mod_php può decidere se uccidere o meno un processo, se non riesce a gestire il numero di richieste. php_fpm ha un parametro chiamato "request_terminate_timeout" che è l'equivalente di max_execution_time di php, che potrebbe fare terminare lo script prima lo script. E così via...
Diciamo semplicemente che php non è adatto per avviare lunghi processi in quel modo. Il mio consiglio è di usare i websocket: non siano più nel 2005![]()