Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Network
  • » Twisted: контроль числа одновременных коннектов [RSS Feed]

#1 Окт. 13, 2008 22:46:03

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2260
Репутация: +  41  -
Профиль   Отправить e-mail  

Twisted: контроль числа одновременных коннектов

Столкнулся с проблемой: необходимо создать более 10к коннектов на сервер, если я вызываю protocol.ClientCreator(reactor, …).connectTCP(*hostport) в цикле и вызываю reactor.run() то сразу октрывается 10к соединений =\

как это дело контролировать? Желательно с примером, ибо с твистед знаком по стольку по стольку)

Офлайн

#2 Окт. 14, 2008 01:16:24

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Twisted: контроль числа одновременных коннектов

Считать количество открытых соединений (connectionMade/connectionLost у протокола)
Если зашел за предел - вместо непосредственного создания фабрики для клиетского протокола создать отложенный вызов через reactor.callLater. В нем опять проверить условие и в случае чего опять отложить.

По поводу примеров - сейчас писать несколько лень/некогда/устал сегодня как собака. Если они все таки нужны - сильно помог бы твой “прожорливый” код. Модифицировать работающее “чуть-чуть не так” гораздо проще, чем создавать с начала.
Если не получится - могу попробовать что-то набросать, но не раньше завтрашнего дня.



Офлайн

  • Начало
  • » Network
  • » Twisted: контроль числа одновременных коннектов[RSS Feed]

Board footer

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

Powered by DjangoBB

Lo-Fi Version