За последние 24 часа нас посетили 32949 программистов и 1756 роботов. Сейчас ищут 845 программистов ...

Тяжелый PHP файл вешает систему

Тема в разделе "Прочие вопросы по PHP", создана пользователем Elkaz, 22 мар 2010.

Статус темы:
Закрыта.
  1. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    Выполняется очень тяжелый PHP файл.
    Его задача - рекурсивно обойти все подпапки в указанной папке, найти файлы субтитров, видео файлы, картинки. Всё это дело заносится в массив. Если в папке не очень много подпапок (до 20-30) - скрипт работает нормально. При больших объёмах - браузер предлагает скачать файл, который весит 0 байт.

    В логах апача ничего нет.
    set_time_limit установлен в 0
    memory_limit установлен в 3072M

    Железка Intel Xeon.
    Версия PHP 5.2.13
     
  2. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    а руками из консоли?
    а файл логов?
    а в корку не падает?
     
  3. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    440Hz
    Доступа к ssh нет - не знаю, запустится ли из консоли.
    error.log пуст по конкретному запросу.
    А это что?
     
  4. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    ну тогда как старые былые.

    print('тут');
    flush();
     
  5. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    а покаж phpinfo() ? именно в этом скрипте?
     
  6. Luge

    Luge Старожил

    С нами с:
    2 фев 2007
    Сообщения:
    4.680
    Симпатии:
    1
    Адрес:
    Минск
    а хранить промежуточные данные и после сбоя начинать с места обрыва?
    Или сканить папки, а во второй заход то, что в них
    Или это по требованию юзера скрипт запускается?

     
  7. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    Тяжело понять как и почему обрыв происходит. Кто виноват - Apache или PHP?
    Плюс проще просто найти проблему, чем создавать костыль.

    Так ничего же не изменится :)

    Пойду проверю
     
  8. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    Проблема была в таймауте апача :)
     
Статус темы:
Закрыта.