1. Задавайте здесь вопросы о коде, которые не подходят в другие разделы, такие как:
    Дизайн > Верстка
    PHP > Как сделать на PHP
    Скрыть объявление

Что лучше использовать для парсинга Php,perl,Delphi?

Тема в разделе "Web Coding", создана пользователем AlexSuv, 18 июл 2007.

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

    AlexSuv Постоялец

    Регистр.:
    29 мар 2007
    Сообщения:
    117
    Симпатии:
    21
    Собственно заинтересовал такой вопрос. Я профессионально программирую на Delphi и как-то все парсеры писал раньше именно на нем. Но последнее время начал делать многие модули на php и вот собственно возникает вопрос на чем лучше писать парсеры/спамилки (софт работает на локальной машине с каналом 512/128, а php на шаринг хостинге)?

    С одной стороны напрашивается ответ, что даже на самом плохеньком шаринг хостинге канал пошире будет, однако некоторых параметров я все же не могу оценить, т.к. не сильно разбираюсь в тонкостях web технологий. Например моя спамилка грузит 3 гц проц на 50-60%, работает в 30-40 потоков одновременно,и я даже не представляю как это все дело поведет себя на шаринг хостинге, если его полностью портировать на php или perl например. Ведь на сервере хоть и выше скорость нета, но способности сервера ограничены.

    Конкретный пример, сейчас хочу сделать парсер для поисковиков, который будет делать умный поиск по результатам запросов (т.е. делать запрос к поисковику, открывать страницу, лазить по нескольким страницам ...).

    Дак вот что посоветуете реализовать все на Delphi( локальная машина 512/128), Php или Perl(платный шаринг хостинг)?
    Дедик и впс не предлагать, т.к. пока нерентабельно, да и вопрос больше наверное интересует в принципе.

    Да, и кстати заметил, что большинство самых известных спамилок написано именно в виде программ (xrumer, Alsub ...), ведь все-таки выгоднее выходит?
     
  2. Dogmat

    Dogmat Постоялец

    Регистр.:
    16 фев 2007
    Сообщения:
    121
    Симпатии:
    38
    Хм, это скорее от того, что программы легче использовать. Запустил exe и спи спокойно, в то время как скрипт нужно еще установить.

    По поводу быстродействия. Не имеет смысла рассматривать скрипты в промышленных масштабах, если нет дедика, впс ... Можно конечно парсить с шаринга, но скрипты будут обрубаться после некоторого времени, да и по количеству могут обрезать - тут как хостер захочет. Поэтому парсить с хоста можно только по чуть чуть.
    А на впс - запускал чекер доменов на 800к (весь рунет) прошелся за пару часов, работало час-полтора в 80 потоков среднем, проц особо не нагружал =)

    По удобству - когда парсишь(не спамишь), часто нужно результат определенным видом сохранить в базе(мускул в основном)
    в пхп,перл раз и сохранил, в толстом клиенте же нужно предусматривать какие то механизмы аплоада инфы на нужный сервак, нужную базу. Да и срабатывание по "будильнику" легче на хосте сделать (это нужно для обновления автоконтента)


    хм. это разве умный поиск? или есть что то вкусненькое после ...(многоточия) ?? так поделитесь уважаемый, можно в личку ;)



    Я обрисовал немного совсем ситуевину.
    Мое личное мнение парсер выдачи поисковиков нужно делать на пхп,перл. Тут есть много своих плюсов: один из которых - сделать систему и продавать к ней доступ, а не саму систему =) , да и других плюсов хватает =)
     
  3. Raenor

    Raenor Ксенолог №1

    Регистр.:
    28 дек 2006
    Сообщения:
    156
    Симпатии:
    91
    Если спамилка грузит проц на 50-60% то хостер закроет аккаунт точно на простом шаринг хостинге.
     
  4. omni

    omni Постоялец

    Регистр.:
    13 июн 2007
    Сообщения:
    99
    Симпатии:
    15
    30-40 потоков грузит на 50-60%? че-то не рентабельно там расходуются ресурсы. тот же спамит на пхп до 300-400 потоков разгоняют (у мну он на 50 потоках на средненькомм вдс работает). так что с алгоритмом надо разбираться (или вообще на си пересесть, тогда можно будет легко свою десктопную спамилку на серверную переделать)
     
  5. Dogmat

    Dogmat Постоялец

    Регистр.:
    16 фев 2007
    Сообщения:
    121
    Симпатии:
    38
    Проц грузит у него десктопная спамилка. На пхп аналога нет у него пока, поэтому с алгоритмом там не разберешься :D

    а вот это дельный совет, правда тоже не на всяком шаринг хосте попрет. но работать будет в разы быстрее это да =)
     
  6. AlexSuv

    AlexSuv Постоялец

    Регистр.:
    29 мар 2007
    Сообщения:
    117
    Симпатии:
    21
    Ну не знаю, все вроде оптимизировано. Просто каждый поток затягивает свою страницу и жестко разбирается с ней. Вообще не в этом дело, я просто привел приблизительный пример, т.к. точной загрузки не мерял.

    Ну на серверную я ее и так могу переделать, ведь сервера не только юниксовые бывают, вопрос в другом.

    Пока у меня вырисовывается такая картина: если работать через шаринг, то из-за загрузки хостер "попросит" подвинуться до дедика. А если уже все равно брать дедик, то тогда пофиг на чем писать.

    С этим вопрос, можно ли на локальной машине определить порог загрузки сервера? (испытать нервы хостера не предлагать, т.к. вариант не совсем подходящий).

    Последовательность действия php скрипта такая:

    Дергаем страницу из нета -> парсим -> обрабатываем результаты -> заносим в базу ... повторять постоянно и одновременно несколько потоков.

    Такую величину как трафик я могу легко подсчитать, а вот каким образом определяется загрузка сервера? Сколько одновременных дерганий может выдержать среднестатистический шарниг хостер?

    omni, а что в твоем понятии средненький вдс? Я сам не сталкивался, но судя и отзывов, по нагрузке это тот же шаринг, только с шелом под тебя. (хотя по идее так оно и должно быть, т.к. это тот же шаринг :)).

    Дак вот возникает еще один вопрос, возможно уже и не для этой темы. Сильно ли отличаются вдс и хороший шаринг хостинг, если сравнивать чисто по возможной загрузке.
     
  7. omni

    omni Постоялец

    Регистр.:
    13 июн 2007
    Сообщения:
    99
    Симпатии:
    15
    на локале ты вряд ли определишь то, как оно будет на сервере (разные операционки)

    вдс.. ну это как бы маленький сервер - там жесткое ограничение на оперативку и ресурсы процессора и как бы отдельная операционка (отдельный "сервер"), т.е. если я перегружаю, то мой "сервер" ляжет, не затрагивая остальных пользователей на этой машине. у меня ограничение 500 МГ процессора и 196 М оперативки, 50 потоков спамита нагружают почти под завязку
     
  8. valeravl

    valeravl Постоялец

    Регистр.:
    14 июн 2007
    Сообщения:
    121
    Симпатии:
    23
    Отличаются тока тем, что у тебя есть доступ по телнету, и ты можешь сервер и зависшие процессы перегружать. Фактически есть рутовый доступ. По производительности - тут все зависит от сервера на который установлен аккаунт (хотя в этом моменте могу ошибаться).
     
  9. lost

    lost Постоялец

    Регистр.:
    15 фев 2007
    Сообщения:
    58
    Симпатии:
    31
    IMHO самый оптимальный вариант - dedicated server, но при отсутствии требуемого кол-ва $$$ самый лучший вариант это PHP. Потому что:
    1. Обычно на сервере каналы 100Мбит, получается что в 100 раз больше чем твои 512кбпс. Т.е. твои 40 потоков сделают за час столько же работы (или меньше), сколько один поток на хороших скоростях.
    2. По моим наблюдениям, обыкновенный парсинг (потянуть страницу и разобрать) жрет мало ресурсов. Запускал скрипты парсинга (php) на 8-12 потоков, хостер не жаловался.
    3. Я считаю, что приложения (/скрипты) под BSD системы или *NIX жрут меньше ресурсов, чем аналоги для Windows.
    4. Стоимость трафика у хостера обычно значительно меньше, чем у интернет-провайдеров. К тому же, иногда бывает, что входящий трафик на сайт не учитывается.

    P.S. Загрузку проца и другие интересные вещи можно посмотреть командой systat.
     
  10. anarki

    anarki Прохожие

    Что-то многовато.

    На хостинге - Perl. Проблем с многопоточностью не должно возникнуть и обработка текста у него быстрее чем у php, да и писать приятней. + куча полезных модулей
     
Статус темы:
Закрыта.