Уведомления

Группа в Telegram: @pythonsu

#1 Май 25, 2011 23:23:03

aliens
От:
Зарегистрирован: 2007-08-14
Сообщения: 135
Репутация: +  1  -
Профиль   Отправить e-mail  

Подскажите по архитектуре?

Здравствуйте

Есть задача, реализовать систему опроса серверов по многим протоколам.
Т.е. есть n серверов и n протоколов по которым каждый сервер надо опросить (http, ping, ftp, ssh и т.п.). Вот думаю, как это лучше делать, использовать twisted (т.к. все нужные протоколы в нем есть, либо можно дописать, и по природе python асинхронность должна работать хорошо), либо писать свои велосипеды и использовать многопоточность?
Серверов будет много и частота опроса достаточно большая (каждые 5 минут)

P.S. есть ли книги или хорошая дока по twisted? на оф. сайте не могу понять с какой стороны к ней подойти



Отредактировано (Май 26, 2011 01:49:34)

Офлайн

#2 Май 26, 2011 09:38:13

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

Подскажите по архитектуре?

по twisted то одна книга
http://slav0nic.org.ua/static/books/python/O'Reilly,.Twisted.Network.Programming.Essentials.(2005).DDU.LotB.chm

но лучше наверно для начала почитать
https://github.com/ninaevseenko/async_twisted_ru/raw/master/async_twisted_ru.pdf
https://github.com/jdavisp3/twisted-intro

Офлайн

#3 Май 26, 2011 10:58:06

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

Подскажите по архитектуре?

смотря что подразумевается под словами “надо опросить”? может и gevent подойдет.

Офлайн

#4 Май 26, 2011 13:22:13

rip86oz
От:
Зарегистрирован: 2011-03-14
Сообщения: 24
Репутация: +  0  -
Профиль   Отправить e-mail  

Подскажите по архитектуре?

С Twisted не знаком. Но для экономии времени, при проверке TCP серверов, лучше использовать raw сокеты - только отправляя им syn пакеты, и ждать ack, ничего в ответ не отсылая -при этом не устанавливая соединения, чтоб потом не закрывать.



Офлайн

#5 Май 26, 2011 13:36:19

aliens
От:
Зарегистрирован: 2007-08-14
Сообщения: 135
Репутация: +  1  -
Профиль   Отправить e-mail  

Подскажите по архитектуре?

rip86oz
Ну, мне не только TCP и не только ack требуется.

o7412369815963
Опросить: послать ping - получить результат (ответ или таймаут)
получить ответ по snmp
получить ответ по http (страницу)
и т.п.
Все это уже реализовано в twisted, но по его доке я не совсем понимаю как это увязать с созданием большого количества запросов.

slav0nic
Спасибо, почитаю. А новее 2005 нет ничего? за 6 лет думаю он развился сильно :)

Странно, что по такому мощному инструменту нету ничего



Офлайн

#6 Май 26, 2011 17:10:10

regall
От: Киев
Зарегистрирован: 2008-07-17
Сообщения: 1583
Репутация: +  3  -
Профиль   Отправить e-mail  

Подскажите по архитектуре?

aliens
Спасибо, почитаю. А новее 2005 нет ничего? за 6 лет думаю он развился сильно
Принципы остались, архитектура тоже. Появились правда новые синтаксические удобства типа inlineCallbacks (тогда такого вроде не было).
А вообще лучше используйте для изучения доку на сайте (особенно помогают примеры, мне, например, никаких книг не понадобилось, чтобы въехать). Также найдите на launchpad огромный такой метапроект tx, который вмещает в себе большое количество разных плагинов и API для twisted. При чтении кода все становится предельно ясным.



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version