Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: cron и запуск скриптов.  (Прочитано 25533 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии

il
Offline Offline
Пол: Мужской
Бодрый птах


« : 10-11-2003 13:40 » 

Вопрос такой.
Есть к примеру идея собирать все комп новости в одно место - типа lenty.ru только не от сайтов великосветских, как там, а от обычных небольших сайтов.

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

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

А хранить все в одном html файле. Этот файл раз в час или раз в пол часа формировать с помощью cron запсука скрипта паука, который оббегая все сайты будет запрашивать у скрипта дату обновления новостей и если дата новая, то скачивать новость с сайтов и формировать новый блок в HTML. Когда паук оббежит все сайты, то тогда старый HTML менять на новый HTML файл и все - новости обновились.


Все бы хорошо - но вот вопрос....
Все хостинги критичны к вопросу о загрузки их серверов.
При наличии 10 сайтов обновленных время скачивания и работы скрипта на сайт получается секунд 5 - т.е. 1 минута работы скрипта на 10 сайтов.
И 600 сайтов соответственно час работы...
И как обновлять все раз в пол часа???

Поясните принцип работы вот такого сервиса? А то что-то я не догоняю...
Ведь обычные поисковики обрабатывают миллионы сайтов, что же делать сайтам статистики или таким как я предложил???
Записан

А птичку нашу прошу не обижать!!!
Lex
Специалист

ru
Offline Offline

WWW
« Ответ #1 : 10-11-2003 13:57 » 

Гром, делить на несколько скриптов, каждый из который обрабатывет не более 100 сайтов скажем, затем это все сливается в один файл и показывается.
Записан

Megabyte be with you!
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии

il
Offline Offline
Пол: Мужской
Бодрый птах


« Ответ #2 : 10-11-2003 14:26 » 

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

А птичку нашу прошу не обижать!!!
Lex
Специалист

ru
Offline Offline

WWW
« Ответ #3 : 10-11-2003 14:33 » 

Еще вариант, устанавливать маленький таймаут на связь с сервером.

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

Megabyte be with you!
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии

il
Offline Offline
Пол: Мужской
Бодрый птах


« Ответ #4 : 10-11-2003 14:43 » 

Цитата

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

В принципе верно - запускать скрипты пачками на короткое время и ставить не выскоий тайм-аут и тогда все отработает в сумме за 10-15 минут при этом каждый скрипт скажем по 3 минутам, и получится что отработка пойдет б
быстрее...

Кстати как ты думаешь такая идея пойдет???
Записан

А птичку нашу прошу не обижать!!!
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #5 : 10-11-2003 14:48 » 

Цитата
Ведь обычные поисковики обрабатывают миллионы сайтов, что же делать сайтам статистики или таким как я предложил???
Некоректное сравнение. Поисковик и новостная лента - вещи разные и работают по разному. Поисковику торопиться некуда, потому он может и много просматривать, а лента берет не все и с небольшого списка сайтов. А принцип работы схож - параллельные запросы страниц. Без графики, стилей и рекламы страницы весят в несколько раз легче и грузятся быстрее.
Сливать в один файл несколько процессов врятли будут - быстрее это делает один, а остальные заносят в отдельные файлы или в базу. В этом случае генерить результирующую страницу можно чаще и независимо он роботов. Главное чтобы они уложились в отведенный период времени.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Lex
Специалист

ru
Offline Offline

WWW
« Ответ #6 : 10-11-2003 14:56 » 

Гром, об этом я и говорил.
И если использовать для слива результатов БД , как предлагает RXL, то можно сделать отдельный скрипт, который запускается на странице и делает выборку по текущим найденым новостям, и не зависит от поисковых скриптов.
Записан

Megabyte be with you!
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии

il
Offline Offline
Пол: Мужской
Бодрый птах


« Ответ #7 : 10-11-2003 16:59 » 

Понял - спасибо - вопрсов вроде больше нет - как вам идейка - сделаем Не понял

Как только движок напишу - будем ставить.
Записан

А птичку нашу прошу не обижать!!!
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #8 : 10-11-2003 20:28 » 

Давай разберем какие проблемы видны на первый взгляд:
1) На каждый сайт придется писать свой скрипт и при смене дизайна на нем еще и переписывать. Т.е. надо следить за этим, или как-то определять смену дизайна автоматически.
2) После разбора страницы определить, была ли уже зафиксированна эта статья.
3) Авторские вопросы: разрешат ли хозяева тех сайтов такое копирование?
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии

il
Offline Offline
Пол: Мужской
Бодрый птах


« Ответ #9 : 10-11-2003 20:42 » 

1&2. Абсолютно верно - только не писать а настраивать.
Т.е. есть таблица со статьями. Пишется скрипт - где есть абстрактное обращение к таблице БД - которая будет указана, к полям, которые будут указаны, и берет 10 последних сообщений - по дате.
При повторном запросе делаем WHERE data>olddata т.е. имеем  все статьи после - если вернулось 0 - то ничего не качаем.
3. А как я скрипт размещу без их разрешения???

Это надо к каждому сайту крупному обращаться.
А мелкие сами придут - рекламу - раскручивать надо.

ИМХО вполне может получиться.
Записан

А птичку нашу прошу не обижать!!!
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #10 : 10-11-2003 21:05 » 

А с каких сайтов ты хочешь брать новости? (кроме compulenta.ru - это и так есть).
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии

il
Offline Offline
Пол: Мужской
Бодрый птах


« Ответ #11 : 10-11-2003 22:35 » 

RXL, я вообще не новости хочу брать.
У каждого сайта есть статьи - обновления - не новости как на лентах, а именно обновления.
Автоматом это выводит - 20-40 сайтов нормально работающих собрать и с ними работать, тогда вся эта 1 страничка будет стоить всех новостных лент, ибо будет для программеров содержать самые новые статьи рунета.

Архива само собой не будет, т.е. страница новостей длиной скажем в 50 пунктов.
Записан

А птичку нашу прошу не обижать!!!
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #12 : 11-11-2003 08:00 » 

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

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии

il
Offline Offline
Пол: Мужской
Бодрый птах


« Ответ #13 : 11-11-2003 10:14 » 

RXL, я перл не знаю, вернее знаю но плохо...

Формат откатывать будем на себе...
Таблица - с скачанными статьями - дата десриптор ссылка сайт откуда - типа ID, другого пока не вижу...
Записан

А птичку нашу прошу не обижать!!!
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #14 : 11-11-2003 10:48 » 

За то я перл немного знаю Улыбаюсь
У тебя подопытные сайты на примете уже есть?
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии

il
Offline Offline
Пол: Мужской
Бодрый птах


« Ответ #15 : 11-11-2003 10:52 » 

Приметы есть - надо по фаворитам пройтись - но тестировать бум на своем.
Записан

А птичку нашу прошу не обижать!!!
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #16 : 14-11-2003 13:42 » 

Гром, написал небольшой скрипт на perl-е. Его еще дорабатывать нужно, но базовые ф-ии работают нормально. как-то: каждое задание в своем процессе (так контролировать легче и есть параллельность выполнения), ф-ии закачки страницы по заданному в параметре url-у, подключение к БД, для каждого сайта свой компактный модуть (отдельный файл), который парсит страничку, с возможностью вызывать сервисные ф-ии из основного модуля. Пока на shelek-е отрабатываю - закачивает /club/view.php, находит на нем линки типа /club/view.php?id= , а на тех страницах уже лежат ссылки на статьи. Если нужны только обновления с точки зрения сайта (с точки зрения робота, обновления - это то чего он еще не имеет), то сразу на /club/ , а там и лежат ссылки на последнее. Как лучше? То ли вообще я делаю?
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии

il
Offline Offline
Пол: Мужской
Бодрый птах


« Ответ #17 : 14-11-2003 19:37 » 

Ни фига себе скорость...
Я хотел это на php писать - но Перл тоже пойдет - будет два варианта - я тебе полностью свою идею завтра нарисую, а ты сам посмотришь и обдумаем ОК?
Записан

А птичку нашу прошу не обижать!!!
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #18 : 17-11-2003 15:01 » 

У меня пока нет главного - что считать новым.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии

il
Offline Offline
Пол: Мужской
Бодрый птах


« Ответ #19 : 17-11-2003 15:04 » 

будет база в которой есть последняя дата добавленного докуменгта с конкретного сайта, все остальное новое...
Для нового сайта при добавлении - 5 последних новостей - ну или 10 - там надо конфиг делать.
Записан

А птичку нашу прошу не обижать!!!
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #20 : 18-11-2003 10:07 » 

Не всегда на странице есть дата выпуска статьи.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии

il
Offline Offline
Пол: Мужской
Бодрый птах


« Ответ #21 : 18-11-2003 10:10 » 

Я знаю, тут у нас проблема ее надо обдумывать.
Записан

А птичку нашу прошу не обижать!!!
zerokool
Гость
« Ответ #22 : 10-05-2004 09:02 » 

RXL и Гром. Пронаблюдал ваши творческие муки. Сначала от души потрещал, потом стало жалко. Могу помочь. Не хотелось бы, что бы вы меня воспринимали как отрицательного персонажа этой пьесы. Я деиствительно могу разрешить ситуацию.
1) Парсить чужие сайты это просто гениальная идея, ну, как говориться, черевато... Подумайте сами. Если же хотите парсить с благославения админов самих сайтов - удачи... Админ вашего сервака от всей души обрадуется обжерливому роботу Улыбаюсь + сложно + нерационально.
2) Можно сделать по-старинке. На единственном серваке лежит жирная база данных:) к которой админы сайтов с помощью заранее любезно предоставленного скрипта добавляют новости, анонсы и. т. д.
3) Скрипт вашей ленты будет вытаскивать последние n записей и отдавать подпраграмме скинов. (При правильном написании подпрограммы на перле нет ничё прощем, чем натянуть заранее приготовленную шкурку). Но это мелочи. Если сам подход к решению проблеммы не противоречит вашим поцифистским убеждениям я подробно расскажу как это сделать. (может и сделаю, если время будет). В принципе на все про все у меня бы ушло 10 часов... максимум.

P.S. Извините, что вмешался в вашу дискуссию. Если сочтете мой стиль немного... бестактным, то прошу прощения.

P.P.S О грамматических ошибках знаю и сам:)
Записан
Гром
Птычк. Тьфу, птычник... Вот!
Готовлюсь к пенсии

il
Offline Offline
Пол: Мужской
Бодрый птах


« Ответ #23 : 10-05-2004 09:48 » new

Твое пребывание на форуме этом зависит от того - как быстро ты извинишься за свое прошлое сообщение!!!!
Записан

А птичку нашу прошу не обижать!!!
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines