Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Python non-mainstream web
Search
Yehor Nazarkin
August 14, 2013
Programming
0
150
Python non-mainstream web
My speech at DevPro TechTalk about pythonic web
Yehor Nazarkin
August 14, 2013
Tweet
Share
More Decks by Yehor Nazarkin
See All by Yehor Nazarkin
Flask, гордость и предубеждения
nimnull
0
330
Агрегация и обработка статистики
nimnull
0
5.7k
Write once, run everywhere
nimnull
0
6.2k
GPU Computing in Python
nimnull
1
5.7k
To Flask or not to Flask
nimnull
5
630
MongoDB Без ORM
nimnull
0
300
REST in Flask (And small client-side intro)
nimnull
10
1.7k
Other Decks in Programming
See All in Programming
ISUCON研修おかわり会 講義スライド
arfes0e2b3c
1
450
効率的な開発手段として VRTを活用する
ishkawa
0
150
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
190
Hack Claude Code with Claude Code
choplin
5
2.3k
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
300
「テストは愚直&&網羅的に書くほどよい」という誤解 / Test Smarter, Not Harder
munetoshi
0
180
AIと”コードの評価関数”を共有する / Share the "code evaluation function" with AI
euglena1215
1
170
High-Level Programming Languages in AI Era -Human Thought and Mind-
hayat01sh1da
PRO
0
800
iOS 26にアップデートすると実機でのHot Reloadができない?
umigishiaoi
0
130
Android 16KBページサイズ対応をはじめからていねいに
mine2424
0
130
AI Agent 時代のソフトウェア開発を支える AWS Cloud Development Kit (CDK)
konokenj
3
270
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
270
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Rails Girls Zürich Keynote
gr2m
95
14k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Thoughts on Productivity
jonyablonski
69
4.7k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Building Adaptive Systems
keathley
43
2.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Optimizing for Happiness
mojombo
379
70k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
830
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Transcript
Python, Web - непопулярные решения Егор Назаркин
Если скучно • http://kharkivpy.org.ua • mailto:
[email protected]
что такое py-web? CGI mod_python WSGI (PEP 3333)
Среда исполнения • Собственное решение • IaaS • PaaS (GAE,
Heroku, dotCloud, etc.)
Custom и IaaS Задача формирует потребности Любой формат системного I/O
PaaS Платформа диктует ограничения Высокий уровень абстракции I/O
PaaS платформы dotCloud, Heroku... — sys.env GAE — набор собственных
API
GAE webapp vs workers async datastore memcache channels (comet) cloudSQL
Blobstore OAuth XMPP Mail logs images task queues sockets search URL fetch users (google id)
GAE Большинство full-stack решений Отдельные сервисы придется поддерживать самостоятельно
WSGI middleware CherryPy Werkzeug WebOb gunicorn свой собственный?
Неблокирующие tornado twisted.web circuits.web gunicorn gevent
Frameworks • NIH (not invented here) • На основе компонентов
Zope • Дедушка современных веб-решений • Пришел из CGI-only времен
• Enterprise подход • Много концепций используется последователями
Plone • CMS фреймворк поверх Zope2 • oDesk - одна
вакансия
Turbogears • paster, repoze.who, zope.sqlalchemy • scaffolding • предлагает структуру
• почти настоящий MVC
Turbogears • вакансий — ноль • встречается в поддержке •
о новых проектах не слышно
Pyramid • Последователь pylons/bfg • базируется на paster и webob
• почти full-stack (scaffolding, etc.) • подробная документация
bottle • похож на попытку облегчить Flask • расширяется плагинами
• однофайловые микроприложения • поддерживает 17 адаптеров для запуска (9 sync, 8 async)
wheezy . web • Щірий український • Предоставляет wsgi application
• “почти” full-stack (нет orm)
Flask • самый большой hype 2012-2013 • построен на werkzeug
• разные модели использования • есть api для расширения • рекомендации, документация, community - all inclusive
Nagare • Stackless Python! • строится из автономных компонентов •
страница — композиция из представлений • нет управляемого цикла request/ response
Nagare
GIL
twisted . web • twisted — матерь всея протоколов •
HTTP — протокол, twisted — сервер
twisted . web • соглашения, компоненты, ресурсы • вложенные ресурсы
• XML-RPC, SOAP • Nevow, Mantissa
tornado • Неблокирующий http/comet сервер • Компоненты, характерные для web-framework
gevent • Синхронный API поверх libevent • TCP/SSL и WSGI
• stdlib monkey-patching
Вопросы? follow @nimnull speakerdeck.com/nimnull