Я занимаюсь разработкой проекта, встроенного в CakePHP, и использую в нем jQuery. У меня есть скрипт, который должен быть вызван запросом ajax. Этот запрос делает много манипуляций в базе данных и занимает слишком много времени. Между выполнением он записывает свой статус в отдельный файл, чтобы я мог видеть состояние выполнения скрипта. Каждый раз, когда он открывает файл, запишите в нем статус выполнения, а затем закройте файл, чтобы устранить проблему блокировки файла.
Теперь, когда этот скрипт выполняется, я отправляю еще один ajax-запрос, который просто читает этот файл и периодически возвращает содержимое каждые 20 секунд. Теперь проблема в том, что когда первый запрос AJAX занят MySQL, любой другой запрос к серверу будет остановлен. Mysql создает процессы всех этих запросов и переводит этот запрос в спящий режим. Я думаю, что это из-за фреймворка, потому что на каждом запросе фреймворка необходимо проверить базу данных. Когда первый основной сценарий завершен, все остальные запросы также выполняются.
Есть ли способ получить прогресс AJAX? Поправь меня, если я где-то не прав ... !!! Заранее спасибо.