Форум сайта python.su
а select не из этой же оперы?
Офлайн
Из той-же.
У меня все нити изолированые. Это решает часть проблем с безопастностью, а select, ИМХО, довольно тяжёл в программировании. Когда начинал, пытался его прикрутить, но ничего путного, по Дзэн, не вышло. Не понимаю я как с ним работать! Особенно, когда этих сокетов тысяча-другая и всем чё-то надо…
Офлайн
ZZZтемболее лучше переваривать все асинхронно, а не плодить тысячу-другую тредов
Особенно, когда этих сокетов тысяча-другая и всем чё-то надо…
Офлайн
redixin
на сколько я знаю топикстартеру это надо для клиента на моб тел, там твистед не покатит)
Офлайн
redixinКак??? Я, наверное, не понял select вообще! Мне казалось, что оно как раз-таки синхронное… Буду благодарен за небольшой пример.
темболее лучше переваривать все асинхронно, а не плодить тысячу-другую тредов
slav0nicВ него я тоже не до конца врубился. Правильно тут кто-то сказал – нужна пара лет, на то, чтобы научится мыслить его образами.
в twisted это все уже есть, нужно просто научиться готовить
Офлайн
Сказал я.
А после этого добавил, что за пару недель смог обучить других делать правильно.
Реально нужно меньше времени, через две недели народ писал весьма качественный код.
Для меня самая главная проблема в twisted была именно в “перестройке мозгов”.
Начал изучать “реактивность” с ACE от Дугласа Шмита (http://www.cs.wustl.edu/~schmidt/ACE.html). Недавно увидел перевод его книги: http://oz.by/books/more.phtml?id=106709&partner=rsdn
Несмотря на то, что язык программирования С++ - проблемы общие. Автор предлагает design patterns, иллюстрируя их на плюсах. Рекомендую.
На twisted эти шаблоны реализованы весьма изящно (лучшего еще не видел).
Для ускорения процесса рекомендую посетить следующий семинар программирования на Питоне (exception.org.ua).
Мероприятие состоится 24 мая.
Я имею честь проводить мастер-класс именно по twisted. Должно получиться не хуже, чем с метаклассами и дескрипторами.
На данный момент не имею достаточно материалов, чтобы выложить как статью. Все еще в стадии окончательной подготовки и усушки-утряски.
(По метаклассам статьи тоже не было. Главным образом потому, что написание хорошей статейки - немалый труд. Поскольку не услышал больших пожеланий видеть материал в инете - не озаботился дополнительной работой. На сайте мероприятия выложен только черновик с минимальными комментариями).
PS
По поводу архитектуры:
прочитал сегодня пост Блинкова: http://www.insight-it.ru/net/scalability/arkhitektura-livejournal/
“Мы ненавидим изобретать колесо! Но тем не менее, если колесо не существует или оно квадратное, то мы не боимся изобретать круглое колесо.” (с)
Готов подвисаться под каждым словом :)
Отредактировано (Май 1, 2008 06:36:59)
Офлайн
на сколько я знаю топикстартеру это надо для клиента на моб тел, там твистед не покатит)Нед, точнее да, но не только ) Первоочередная задача - десктоп.
Офлайн
Андрей СветловБлин. Не успеваю… Вот если бы в июне-августе…
Для ускорения процесса рекомендую посетить следующий семинар программирования на Питоне (exception.org.ua).
Мероприятие состоится 24 мая.
Андрей СветловСсылочку? Интересно…
Я имею честь проводить мастер-класс именно по twisted. Должно получиться не хуже, чем с метаклассами и дескрипторами.
Андрей СветловБыло бы хорошо, чтобы эта статья всё-таки вышла как статья.
На данный момент не имею достаточно материалов, чтобы выложить как статью. Все еще в стадии окончательной подготовки и усушки-утряски.
Андрей СветловВот этим я и занимаюсь. Достало, блин.
“Мы ненавидим изобретать колесо! Но тем не менее, если колесо не существует или оно квадратное, то мы не боимся изобретать круглое колесо.” (с)
Готов подвисаться под каждым словом :)
Офлайн
ZZZВ июне-августе, надеюсь, Иван mkdir сделает следующий exception. Тоже интересный
Блин. Не успеваю… Вот если бы в июне-августе…
ZZZhttp://exception.org.ua/media/materials/exception-conference-07/andrey_svetlov_-_metaclasses.py
Ссылочку? Интересно…
ZZZПосмотрим. Дополнительная особенность в том, что я провожу мастер-классы, а не обычные лекции. Способ подачи материала сильно отличается. Соответственно отличается и способ подготовки к докладу.
Было бы хорошо, чтобы эта статья всё-таки вышла как статья.
ZZZtwisted не занимается вопросами безопасности. Это просто легковесный (гусары, молчать!) асинхронный фреймворк для написания сетевого взаимодействия. Плюс готовые реализации для поддержки различных протоколов. Ничего больше.
Вопрос. Как у twisted с безопастностью. У меня, как вы уже успели заметит, довольно жёсткие требования по её обоспечению. Притом, мне нужно не просто допустить или недопустить юзера по хэшу пароля из субд, а ограничивать его возможность. Нынешний вариант (уже третий!) именно под это и заточен. Вся архитектура модульная и пользователь не должен мочь использовать функуионал, который специально не разрешён ему.
ZZZС этим - к плагинам. Твистед имеет подсистему для плагинов, но я не уверен, что она мне нравится (и использовать ее необязательно). Есть еще ряд других решений. Разговаривать можно долго, но сначала необходимо определить конкретные требования. И от них отталкиваться.
Плюс. Мне нужно удобство использования для разработчиков новых модулей. Ибо их нужно много и разных. И, само собой, простота их динамического подключения.
Офлайн
Андрей СветловИнтересный – это одно, а меня сейчас не всё интересует. Посморим.
В июне-августе, надеюсь, Иван mkdir сделает следующий exception. Тоже интересный
Андрей СветловТо что нужно! Огромное спасибо! Я уже с пол-года пытаюсь найти простые примеры создания и использования метаклассов. А о дескрипторах вообще узнал только месяц назад. Всё удивлялся, как property работает…
http://exception.org.ua/media/materials/exception-conference-07/andrey_svetlov_-_metaclasses.py
Андрей СветловЕсли не секрет, в чём отличие мастер-классов от лекций.
Посмотрим. Дополнительная особенность в том, что я провожу мастер-классы, а не обычные лекции. Способ подачи материала сильно отличается. Соответственно отличается и способ подготовки к докладу.
Андрей СветловЛегковесный??? А чтоже тогда “тяжеловесный”? Реализация COBRA на Qt3-console??? :-)
twisted не занимается вопросами безопасности. Это просто легковесный (гусары, молчать!) асинхронный фреймворк для написания сетевого взаимодействия. Плюс готовые реализации для поддержки различных протоколов. Ничего больше.
Офлайн