Сделать консольный воркер, который будет выполнять задачи в порядке очереди.
1. Принимать задачи или брать из базы какой то, типа редис.
2. Выполнять её.
3. Сохранять уведомления в базу.
4. Отправлять уведомление пользователю.
Это позволит, обрабатывать задачи консольно, в очереди, не создавая запуск нескольких экземпляров скриптов, например, что бывает через крон, уведомить юзера при завершении, сайт не нужно будет держать открытым и ждать выполнения.