За последние 24 часа нас посетили 17622 программиста и 1917 роботов. Сейчас ищут 1028 программистов ...

Выполнить в отдельном потоке

Тема в разделе "Прочие вопросы по PHP", создана пользователем Invision, 10 дек 2012.

  1. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    Столкнулся с небольшой проблемой, при переходе на страницу подгружается через Ajax нужная информация, время выполнения 5-7 секунд, если не дожидаясь ответа перейти на другую страницу, начнет грузиться только после того, как сервер ответит на предыдущий запрос. Как можно выполнить запрос в отдельном потоке? (не прибегая к exec).

    Рабочий вариант:
    Но по непонятной причине не хочет выполняться в фреймворке, либо в хосте дело...
     
  2. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    как делаешь запрос?
     
  3. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    Обычный GET запрос к действию контроллера, он выводит представление с информацией в виде html кода.
     
  4. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    как делаешь запрос покажи
     
  5. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    Через JQuery, $.get('{ссылка}', function(result) { ...действия } );
     
  6. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    стрэнно. вроде он асинхронный. не должен подвисать.
     
  7. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    Суть запроса получить подробную информацию о сервере (свободное место на дисках, процессор, ОЗУ итд), но почему он не хочет выполнять эти действия отдельным потоком не пойму.
     
  8. artoodetoo

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

    С нами с:
    11 июн 2010
    Сообщения:
    11.129
    Симпатии:
    1.249
    Адрес:
    там-сям
    Как будто какая-то функция на серверной стороне не может выполняться в двух потоках.
    Сделай тестовую страницу с двумя-тремя одинаковыми областями под этот GET и методом исключения ищи что за функция включает ожидание.
     
  9. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    Готовое решение взял, плохо изучил и нашел проблему :) Все дело в sleep, там где автор скрипта измеряет нагрузку на CPU. Вообщем идиотизм.

     
  10. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Дык оно там не с проста
     
  11. Invision

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

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    Это и дураку понятно, буду искать альтернативный способ измерения нагрузки.