Links_checker - поиск ссылок во множестве сайтов

123
KS
На сайте с 16.11.2005
Offline
47
#11

Конечно, объём обмена данными большой, потому отчет придет нескоро...

Если проверять ссылки по заранее известным адресам или с небольшим разбросом (например, сайт может переползти на другую старницу каталога), то это может снизить объём...

Тем более редко кому нужен отчет "прям щас", главное - это качественная проверка, а сами запросы можно рассредоточить по времени, чтоб сервер особо не грузить. Пускать их с задержкой, чтоб не все разом...

vlav
На сайте с 07.09.2004
Offline
57
#12
Konstantin_S:
Конечно, объём обмена данными большой, потому отчет придет нескоро...

он вообще не придет, потому что все выполняемые на сервере скрипты имеют ограничение времени выполнения. Через 30 сек (настройка php по умолчанию) они принудительно завершаются.

Такие программы не пишутся для исполнения на сервере, т.к это либо означает его перегрузку, либо неприемлемые для вас параметры по скорости.

Мы бы обязательно предложили серверный вариант, если бы была такая техническая возможность.

С уважением
KS
На сайте с 16.11.2005
Offline
47
#13

Техническая возможность есть...

У меня скрипт проверки наличия ответных ссылок работает..

каталог у меня порядка 500 - 550 сайтов и проверка занимает минут десять что-ли...

ну а потом отчет приходит.

Правда система моя написана не на РНР, а на ПЕРЛ'е

vlav
На сайте с 07.09.2004
Offline
57
#14
Konstantin_S:
Техническая возможность есть...
У меня скрипт проверки наличия ответных ссылок работает..
каталог у меня порядка 500 - 550 сайтов и проверка занимает минут десять что-ли...
ну а потом отчет приходит.
Правда система моя написана не на РНР, а на ПЕРЛ'е

Не буду спорить - сервер можно настроить как угодно. Но ограничение по времени есть всегда иначе достаточное количество запущеных скриптов со строчкой, типа while(1=1) {} - убьет его.

KS
На сайте с 16.11.2005
Offline
47
#15

Сервером своим у меня и не пахнет, сижу на мейле (физический сервер - РБК), раньше сидел на вебрайз'е, а еще раньше на бесплатном фатал'е. И у всех у них было и есть ограничение 30 секунд на работу любого скрипта...

Однако проверка ссылок работала на всех корректно...

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

И всё путём работает, час отрабатывает без проблем...

vlav
На сайте с 07.09.2004
Offline
57
#16
Konstantin_S:
Была проблема оганичения времени, посидеть пришлось денёк... Ну потом и надумал...
И всё путём работает, час отрабатывает без проблем...

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

Если рассуждать о теоретической части, то есть еще важная деталь. Когда идет обращение по неотвечающему адресу обычно выдерживается тайм-аут в несколько секунд. В это время другой поток должен работать с другим сайтом и таким образом загрузить канал. То есть количество потоков должно быть таким, чтобы количество передаваемых данных равнялось ширине канала. По опыту для 256 кбит/сек - это порядка 50 потоков. Для мегабитного канала должно быть больше и т.д.

Иначе проверка, скажем 1000 каталогов займет неприемлемо много времени.

В среднем реальная скорость передачи данных при обходе нормального по доступности сайта в 1 поток составляет всего 20-30кбит. Из-за даже не плохих ссылок, а необходимого времени начальной инициализации http протокола при начале каждой страницы. То есть одна страница загружается конечно быстрее, но если обойти сайт из например 100 страниц и поделить объем данных на общее затраченное время, то получатся как-раз такие цифры. Независимо от ширины канала.

Вот так 🚬

KS
На сайте с 16.11.2005
Offline
47
#17

Да дело еще в том, что число потоков может быть ограничено на сервере. Например, фалатовский сервак более трёх потоков не переваривал...

K
На сайте с 24.03.2004
Offline
223
#18
Konstantin_S:
Да дело еще в том, что число потоков может быть ограничено на сервере. Например, фалатовский сервак более трёх потоков не переваривал...

в природе есть большая куча различных proxy

проверенная ддос защита (http://ddos-protection.ru) -> http://ddos-protection.ru (http://ddos-protection.ru), бесплатный тест, цена от размера атаки не зависит.
KS
На сайте с 16.11.2005
Offline
47
#19

Товарищ, я не это имею ввиду...

я про то, что вызывате Вы, например, fork или system, или exec 3 раза, а на четвертый функция не срабатывает, то есть нельзя из одного скрипта запускать более трёх дочерних процессов и нельзя сделовадельно делить более чем на 3 ветки отправку HTTP запросов...

Deni
На сайте с 15.04.2006
Offline
355
#20
vlav:
он вообще не придет, потому что все выполняемые на сервере скрипты имеют ограничение времени выполнения. Через 30 сек (настройка php по умолчанию) они принудительно завершаются.

Очевидно такое понятие как перезапуск скрипта Вам не знакомо просто ........ :)

123

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий