HL++2009: Twisted Framework – фреймворк для написания сетевых приложений в Python 2

Posted by Андрей on Сентябрь 25, 2009

highload

На HighLoad++-2009 буду выступать с докладом Twisted Framework – фреймворк для написания сетевых приложений в Python. Конференция будет проходит 12-13 октября 2009 г. в Инфопространстве. Приглашаю всех желающих!

Тезисы доклада:

  1. Архитектура сетевых сервисов, нити, процессы, асинхронный ввод-вывод.
  2. Тенденции в изменении структуры нагрузки на сетевые сервисы: AJAX, Comet/BOSH, клиент-серверная архитектура, проблема 10k.
  3. Асинхронный ввод-вывод и параллельное программирование: достоинства и недостатки. Поддержка локального контекста, deadlock, lock contention, starvation, масштабирование на многоядерную архитектуру и т.д.
  4. Twisted Framework с высоты птичьего полета.
  5. Аналоги Twisted в других языках программирования: Ruby — EventMachine, Perl — POE.
  6. Центральная концепция Twisted: Deferred — как сохранить контекст выполнения в однопоточном коде с асинхронным вводом-выводом.
  7. Аналогии между последовательным кодом и асинхронным кодом с использованием Deferred.
  8. Twisted и использование нитей: модель worker, «оборачивание» legacy кода.
  9. Реальные примеры Twisted-приложений, цифры, факты, архитектурные решения, преимущества и недостатки:
    • pyFMS — сервер RTMP-вещаний, нагрузка, оптимизация Python-кода;
    • MDC-сервер, масштабирование;
    • Qik Push Engine, обслуживание тысяч клиентов, тестирование клиентов.
  10. Качество кода Twisted, модель разработки, перспективы развития проекта, экосистема Twisted. Что может Twisted дать моему проекту?
Trackbacks

Use this link to trackback from your own site.

Comments

Leave a response

  1. Kolger Сб, 26 Сен 2009 11:11:45 UTC

    Не подскажете, что такое «Проблема 10к»?

  2. Андрей Сб, 26 Сен 2009 15:40:57 UTC

    Если быть точнее, проблема изначально называлась C10k: http://www.kegel.com/c10k.html

    Речь идет о том, как обслуживать одновременно 10 тыс. соединений, сегодня эта цифра может быть и выше, 20-30 тыс. активных соединений на один сервер.

Comments