Мультипотоковое использование php скриптов на локальном сервере

Тема в разделе "Как сделать...", создана пользователем silmarion, 6 авг 2014.

  1. silmarion

    silmarion

    Регистр.:
    21 июн 2012
    Сообщения:
    194
    Симпатии:
    19
    Добрый день всем

    Переодически запускаю свои скрипты на локальном сервере (Denwer) для теста.

    Вопрос собственно вот в чем:

    Как увеличить количество одновременно выполняемых соединений к локалхост?

    Пробую к примеру запустить работу скрипта в 10-20 потоков, получаю на выходе очередь из скриптов, которые выполняются друг за другом (максимум одновременно нормально выполняются 2-3 скрипта)

    Если выполнить скажем 100 потоков то 90% запущенных скриптов завершаются по таймауту даже не начав работу
     
  2. Jedy

    Jedy Писатель

    Регистр.:
    11 янв 2013
    Сообщения:
    5
    Симпатии:
    0
  3. medbrat3

    medbrat3 Создатель

    Регистр.:
    4 апр 2010
    Сообщения:
    10
    Симпатии:
    1
    PHP не поддерживает многопоточность, но есть несколько методов её эмуляции, например запуск нескольких копий скрипта. Для этого просто пишешь условия при которых для запуска какого либо скрипта запускаются его копии.
     
  4. swerwer

    swerwer Создатель

    Регистр.:
    21 окт 2012
    Сообщения:
    10
    Симпатии:
    2
    Как вариант - перейти на линукс и использовать многопоток через fork.
     
  5. latteo

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.523
    Симпатии:
    1.376
    На win можно установить winginx и запускать php через
    Код:
    spawn-fcgi.exe -a 127.0.0.1 -p 9000 -f "D:\Winginx\php5\php-cgi.exe -b 127.0.0.1" -F 10
    - запустит 10 потоков php, понятное дело можно и больше
    Тоже самое можно сделать и для денвера, если перенастроить php в режим fastcgi

    Так же можешь поковырять настройки apach в разделе worker - Перейти по ссылке
     
    Последнее редактирование: 7 авг 2014