За последние 24 часа нас посетили 20849 программистов и 1124 робота. Сейчас ищут 356 программистов ...

параллельное выполнение и послед. вывод

Тема в разделе "PHP для новичков", создана пользователем SergVL, 23 окт 2016.

  1. SergVL

    SergVL Активный пользователь

    С нами с:
    11 авг 2016
    Сообщения:
    25
    Симпатии:
    0
    Доброе время суток. Подскажите пожалуйста. Делаю выполнение внешней программы через shell_exec с последующим выводом в браузер. Тоесть PHP запускает некие файлы, которые и выполняют процессы. Вопрос в том, что они выполняются друг за другом и на это уходит много времени. Пробовал запускать файлы одновременно через &. Да все быстро работает, но текст выходит не последовательно, а летит в кучу и получается каша. Как сделать чтобы быстро и чтобы информация записывалась последовательно.
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    более мощный сервер нужен, это может помочь

    Можно в фоне, например через cron выполнять команды, а пользователю просто говорить, что вот вам ссылка для проверки статуса, как выполнение будет закончено по ней всё сможете посмотреть.
     
  3. SergVL

    SergVL Активный пользователь

    С нами с:
    11 авг 2016
    Сообщения:
    25
    Симпатии:
    0
    Нет мощного сервера. Больше нет вариантов?
    --- Добавлено ---
    Все будет отображаться онлайн. Поэтому тормоза не нужны.
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв
    @SergVL оптимизировать тогда алгоритмы которые отрабатывают. Замерь что конкретно тормозит. Какая часть ли части.
     
  5. Abyss

    Abyss Старожил

    С нами с:
    12 дек 2015
    Сообщения:
    1.298
    Симпатии:
    218
    Адрес:
    Default city
    Посмотрите в сторону bash, через какой-нить скриптец дробите ответы от скриптов. Может shmop ? Или очереди.
     
  6. SergVL

    SergVL Активный пользователь

    С нами с:
    11 авг 2016
    Сообщения:
    25
    Симпатии:
    0
    Просто PHP выполняет все запросы друг за другом. Если бы он делал это одновременно.
     
  7. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.230
    Симпатии:
    1.715
    Адрес:
    Молдова, г.Кишинёв