Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 12, 2012 12:15:53

DHT
От:
Зарегистрирован: 2009-09-24
Сообщения: 119
Репутация: +  0  -
Профиль   Отправить e-mail  

httplib2 низкая результативность при увеличении потоков.

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



Офлайн

#2 Дек. 12, 2012 13:38:02

Soteric
От:
Зарегистрирован: 2010-09-19
Сообщения: 352
Репутация: +  20  -
Профиль   Отправить e-mail  

httplib2 низкая результативность при увеличении потоков.

Я не уверен, будет ли это отображено как нагрузка на процессоре



Офлайн

#3 Дек. 12, 2012 16:19:04

Lexander
От:
Зарегистрирован: 2008-09-19
Сообщения: 1139
Репутация: +  33  -
Профиль   Отправить e-mail  

httplib2 низкая результативность при увеличении потоков.

DHT
будет ли это грузить процессор?
Не настолько, чтобы это стало узким местом.
Узкое место у вас - сеть (не библиотека!) и обслуживание потоков Питоном.



Офлайн

#4 Дек. 12, 2012 16:51:14

DHT
От:
Зарегистрирован: 2009-09-24
Сообщения: 119
Репутация: +  0  -
Профиль   Отправить e-mail  

httplib2 низкая результативность при увеличении потоков.

Lexander
Узкое место у вас - сеть (не библиотека!) и обслуживание потоков Питоном.
Спасибо вам всем за помощь! Теперь хоть знаю в какую сторону копать.
Но что понимается под
Узкое место у вас - сеть
?



Офлайн

#5 Дек. 12, 2012 21:20:44

Lexander
От:
Зарегистрирован: 2008-09-19
Сообщения: 1139
Репутация: +  33  -
Профиль   Отправить e-mail  

httplib2 низкая результативность при увеличении потоков.

Подразумевается не ваш локальный сетевой интерфейс, а интернет.
Скорость получаемых данных равна наименьшей скорости на одном из участков сети между вашим сервером и удаленным.
Для части узлов из вашего списка она составляет секунды и даже десятки секунд.
Все это время Питон “присматривает” за вашими потоками.



Офлайн

#6 Дек. 12, 2012 21:47:10

DHT
От:
Зарегистрирован: 2009-09-24
Сообщения: 119
Репутация: +  0  -
Профиль   Отправить e-mail  

httplib2 низкая результативность при увеличении потоков.

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



Офлайн

#7 Дек. 13, 2012 14:48:28

Lexander
От:
Зарегистрирован: 2008-09-19
Сообщения: 1139
Репутация: +  33  -
Профиль   Отправить e-mail  

httplib2 низкая результативность при увеличении потоков.

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



Офлайн

#8 Дек. 14, 2012 15:36:29

lorien
От:
Зарегистрирован: 2006-08-20
Сообщения: 755
Репутация: +  37  -
Профиль  

httplib2 низкая результативность при увеличении потоков.

> Вот этого бы совсем не хотелось. Т.к. именно для httplib2 написал уже очень много чего хорошего: куки менеджер, multipart/form-data и другое.

Попробуйте асинхронный Grab::Spider (http://grablib.org), там есть все эти плюки типа кук, форм и т.д., а работать будет быстро т.к. на базе асинхронного pycurl

Офлайн

#9 Дек. 15, 2012 22:39:25

Lexander
От:
Зарегистрирован: 2008-09-19
Сообщения: 1139
Репутация: +  33  -
Профиль   Отправить e-mail  

httplib2 низкая результативность при увеличении потоков.

lorien
Я тоже хотел было посоветовать ваш ФМ, но потом автор написал, что у него уже куча обвеса сделано под httplib2.

Впрочем, DHT, я бы хотя бы посмотрел grab на паре тестовых примеров.
Все равно вам для реальной работы нужно переписывать код, почему бы не глянуть.
А там уже решите, использовать или нет.



Офлайн

#10 Дек. 15, 2012 22:54:47

Lexander
От:
Зарегистрирован: 2008-09-19
Сообщения: 1139
Репутация: +  33  -
Профиль   Отправить e-mail  

httplib2 низкая результативность при увеличении потоков.

lorien
Хочу добавить, все таки перед использованием любой высокоуровневого ФМ, хорошо бы разобраться в основах.
Кто с индусами работал, поймет :)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version