Twisted Framework - фреймворк для написания сетевых приложений в Python Основная секция
Тезисы
Тезисы:
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 дать моему проекту?
О докладчике:
Андрей Смирнов, руководитель веб-разработки Qik (http://qik.com/).