Многопоточность

Тема в разделе "PHP", создана пользователем LEXAlForpostl, 2 июл 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. LEXAlForpostl

    LEXAlForpostl

    Регистр.:
    21 май 2008
    Сообщения:
    739
    Симпатии:
    226
    Здравствуйте.
    Написал парсер сайта.
    Необходимо спарсить более 200 000 страниц.
    На компьютере стоит убунту 10.4; канал интернета 8/0.5 Мб
    Увижу ли я прирост в скорости, если запущу параллельно несколько скриптов?
     
  2. CrashX

    CrashX В прошлом XSiteCMS

    Регистр.:
    6 июн 2008
    Сообщения:
    682
    Симпатии:
    112
    исходящий канал маловат, насколько я понял 8 входящий, 0.5 исходящий...
    в плане пользы мне кажется 10-15 потоков будет удачно на данном направлении )
    на исходящем нолжно хватит канала, когда чекал аськи я создавал до 20 потоков, но там и данных меньше и канал меньше) .5 в оба направления )
     
  3. Belial

    Belial

    Регистр.:
    1 фев 2010
    Сообщения:
    236
    Симпатии:
    113
    Если бы нужно было парсить разные сайты, то прирост в скорости был бы однозначно.
    А так - только проверять. По идее шустрее должно работать, если сайт не заддосишь :)
     
  4. DrakonHaSh

    DrakonHaSh

    Регистр.:
    29 июн 2010
    Сообщения:
    358
    Симпатии:
    122
    у тебя есть все возможности чтобы проверить это на практике ;)
    мне тут еще вопрос один видится - как ты будешь синхронизировать данные между потоками о том, какие части сайта уже спарсены, а какие нет - дабы не парсить одно и тоже дважны.
     
  5. diavolic

    diavolic

    Регистр.:
    17 мар 2010
    Сообщения:
    522
    Симпатии:
    102
    скорее всего подразумевается что 1 поток = парсингу 1 страницы целиком
     
  6. LEXAlForpostl

    LEXAlForpostl

    Регистр.:
    21 май 2008
    Сообщения:
    739
    Симпатии:
    226
    Я сайт на равные части разобью.
    Если будет 10 потоков, то каждому потоку достанется по 20к страниц :)
     
  7. dandandan

    dandandan

    Регистр.:
    7 авг 2008
    Сообщения:
    996
    Симпатии:
    268
    Нужно смотреть в сторону multicurl . Обсуждение и пример скрипта можно поиском найти по запросу multicurl .
     
  8. KillDead

    KillDead

    Регистр.:
    11 авг 2006
    Сообщения:
    890
    Симпатии:
    562
    Да, я думаю стоит разбить- быстрее будет работать. Ведь скрипт не только скачивает страницы, но и наверно обрабатывает их. В зависимости от сложности может занимать довольно много времени. Но есть вариант, что одновременная обработка может положить серв (если есть ошибки или уж очень сложная обработка)
     
Статус темы:
Закрыта.