Парсинг данных по списку сайтов через ГЕТ - через время грузит проц под 100%

AdDorFit

Новичок
Регистрация
11.12.2016
Сообщения
24
Благодарностей
2
Баллы
3
Всем привет! Есть список сайтов, цель шаба - выпарсить с них данные. Проблема: запускаю в многопотоке, через минуту уже проц забитый. Дело не в регулярках, тесты показали, что проц грузит и чисто без них, с одним экшеном гет запроса, то есть это он создает такую нагрузку. Как пониманию, попадаются "жирные" на код страницы, что в один поток работают норм, но в многопотоке, когда таких несколько и они пересекаются - начинает все идти по $$$.

Какие вижу варианты решений:
1. Узнать размер страницы заранее, но по "только заголовки" инфо есть не всегда, поэтому не вариант.
2. Подключать через api левые сервисы по анализу сайтов на размер страницы - тоже особо не впечатляет
2. Перевести гет запрос в c# код с доработкой, например, установить лимит на загрузку (хотя уменьшение таймаута только ускорило процесс забивки проца) кода страницы
3. Установить лимит на загрузку проца потоком, но это что то из фантастики

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

melutsk

Client
Регистрация
03.08.2016
Сообщения
1 348
Благодарностей
1 259
Баллы
113
зенка и парсинг это конечно лол
 

AZANIR

Client
Регистрация
09.06.2014
Сообщения
405
Благодарностей
198
Баллы
43

backoff

Client
Регистрация
20.04.2015
Сообщения
6 052
Благодарностей
6 481
Баллы
113
1. какой сервак?
2. сколько всего потоков?
3. есть цикличность в шаблонах?
 

nole

Client
Регистрация
19.11.2010
Сообщения
368
Благодарностей
217
Баллы
43

Dexio

Client
Регистрация
09.05.2014
Сообщения
1 254
Благодарностей
220
Баллы
63

Шива

Client
Регистрация
05.02.2018
Сообщения
1 088
Благодарностей
341
Баллы
83
Чем по вашему стоит парсить? Зенно в данном вопросе довольно удобна
Парсить надо парсерами.
На зенке парсеры только на C# нормально себя показывают.
 
Последнее редактирование:

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113

Шива

Client
Регистрация
05.02.2018
Сообщения
1 088
Благодарностей
341
Баллы
83
Хммм... В чем же разница парсера на экшенах или на С#? Ну так, не вдаваясь в подробности.
Например на шарпе в одном инстансе можно запустить парсер в 500 потоков и не тратить ресурсы на инстансы.Даже при условии того что браузер отключен.
 

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113
Например на шарпе в одном инстансе можно запустить парсер в 500 потоков и не тратить ресурсы на инстансы.Даже при условии того что браузер отключен.
Экшенами подобного не сделать?
 

Шива

Client
Регистрация
05.02.2018
Сообщения
1 088
Благодарностей
341
Баллы
83

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113

Шива

Client
Регистрация
05.02.2018
Сообщения
1 088
Благодарностей
341
Баллы
83
Да? Ну ладно, пусть будет так.

Кстати, а чем экшен отличается от того же кода на C# в зенке?
Если стандартные екшены заменять на С# из вики то ничем.
Кроме возможности все оптимизировать.
 

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113
Если стандартные екшены заменять на С# из вики то ничем.
Ну и вернемся к первому вопросу:
Хммм... В чем же разница парсера на экшенах или на С#? Ну так, не вдаваясь в подробности.
Прямой ответ будет - НИЧЕМ.

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

Шива

Client
Регистрация
05.02.2018
Сообщения
1 088
Благодарностей
341
Баллы
83
Ну и вернемся к первому вопросу:

Прямой ответ будет - НИЧЕМ.

И вики тут совсем не причем. Да и экшены только одни в постере, не стандартных нету.

Да, и более гибко написать код под конкретную задачу.
Все очень зависит от реализации проекта в целом.
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)