Как выполнить длительный PHP скрипт?
Клиент нажимает кнопку, его задача записывается в очередь, ему возвращается "ОК".
Скрипт по крону разбирает очередь и отправляет отчет клиенту, например, на почту.
Если nginx, можно попробовать fastcgi_finish_request()
Клиенту будет отправлен ответ и соединение закрыто, сессия разлочится, скрипт продолжит выполняться в фоне.