Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 22, 2010 16:55:56

Fei Wong Reed
От:
Зарегистрирован: 2010-06-20
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

[поругайте] Модульная надстройка над Tornado (и не только)

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

Некоторое время назад я начал писать для веба с использованием питоновских фреймворков. В процессе этого у меня выработался некий набор постоянно применяемых подходов и представлений о том, чего именно хочется мне от фреймворков.

Также недавно я наткнулся на Tornado, и, надо отметить, он пришелся мне очень по душе из-за своей минималистичности и скорости. Что мне не понравилось - отсутствие в его составе даже в упрощенном виде нескольких полезных возможностей, к которым я привык в Django и Pylons.

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

Основная идея библиотеки - активное использование абстрактных интерфейсов, миксинов, коллбэков и хуков. И главное - динамически загружаемые компоненты, для подключения которых вообще не требуется правки уже существующих исходников. Идея модулей была мною почерпнута из одного проекта, мелькавшего на ЛОРе.

Библиотеку можно условно разделить на три части:

1) Ядро, обеспечивающее загрузку модулей и разрешение их зависимостей
2) Стандартные сервисы - настройки, логгирование, пул процессов, посредники для работы с СУБД
3) Набор расширений для Tornado: сессии, генератор URL (на данном этапе примитивный), вынесение тяжелых задач в процессы

Отдельно можно отметить, что библиотека сама по себе никак не завязана на Tornado и даже на веб.
Также я планирую добавить поддержку других фреймворков. Так, например, будет очень интересно запускать поверх Tornado WSGI-фреймворки, благо такая возможность в Tornado есть, но пользоваться при этом преимуществами, которые дает мой модульный подход.

Сейчас я потихоньку документирую и дописываю код.

Документация лежит тут.
Исходники библиотеки с демкой тут.

Код, пожалуй, довольно грязный. Если мои идеи будут кому-то интересны - сделаю его чище и лучше.

Прошу конструктивной критики.

За английский сильно не пинайте, за указание на ошибки буду благодарен.

Если кто-то захочет применить библиотеку у себя или принять участие в разработке, буду очень рад.



Офлайн

#2 Июнь 23, 2010 05:45:42

PooH
От:
Зарегистрирован: 2006-12-05
Сообщения: 1948
Репутация: +  72  -
Профиль   Отправить e-mail  

[поругайте] Модульная надстройка над Tornado (и не только)

Актуально :) Пока правда сильно не смотрел, но sqlalchemy и асинхронный режим работы с ней радует.



Вот здесь один из первых отарков съел лаборанта. Это был такой умный отарк, что понимал даже теорию относительности. Он разговаривал с лаборантом, а потом бросился на него и загрыз…

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version