У меня есть PHP-файл, который обрабатывает мои данные из форм, но у меня, похоже, есть проблема с производительностью/памятью, когда я отправляю форму, которая использует другой файл PHP через require_once
. В первый раз, когда сообщение обрабатывается, и производительность прекрасна, но с каждым последующим сообщением он становится медленнее и медленнее, пока окно браузера не зависает, и я вижу некоторые занятые потоки php cgi на сервере IIS.Ошибка производительности PHP require_once Обработчик событий AJAX
Я использую PHP 5.6 (php-5.6.11-Win32-VC11-x86) и jQuery 2.1.4.
Короткая публикация всего кода в основном при нажатии кнопки отправки jQuery делает запрос XHR и форма передается в form_handler.php
, который затем решает, как обрабатывать данные.
Все формы, обрабатываемые в этом файле, работают нормально, однако у меня есть формы, требующие расширенной обработки. Я пытаюсь разгрузить это в другой файл PHP. Код, который управляет этим выглядит следующим образом:
if($options[0] == "processor"){
//Data can not be handled and must use processor
$sql = "select processor_file from dbo.processor where reference_id = '".$options[1]."'";
$result = query_to_field($sql);
$processor = '../processors/'.$result;
if(file_exists($processor)) require_once $processor;
else echo "Error Processor Not Found<br/>";
}
Указанный файл затем делает некоторые вещи и генерирует HTML-код, который возвращается через эхо. Я не уверен, является ли проблема require_once
, и я должен использовать curl
или exec
, чтобы получить результат из другого файла.
Полученное сообщение - одно поле, а файл процессора - modified copy of this example.
Я изменил его, чтобы использовать preg_match
вместо ereg
и строить $html
вместо всех эхо-х и гравюр, так что я могу только повторить $html
когда полный.
Любое руководство, которое может быть предложено, будет оценено по достоинству.
Вам необходимо отредактировать свой вопрос, чтобы предоставить более подробную информацию. Какую версию PHP вы используете? Какую версию jQuery вы используете? Насколько велики файлы, которые вы отправляете в этот скрипт? Что конкретно сделал бы вторичный процесс? Какие браузеры/версии вы используете? – JakeGould
, хотя 'require_once' медленнее сравнивается с другими' include', 'include_once' и т. Д., Но это обычно не является источником проблемы ... imho – Andrew
Это почти наверняка не касается самого require_once и, скорее всего, в этом файле процессора. –