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
160
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.3k
GPU Computing in Python
nimnull
1
5.7k
To Flask or not to Flask
nimnull
5
640
MongoDB Без ORM
nimnull
0
310
REST in Flask (And small client-side intro)
nimnull
10
1.7k
Other Decks in Programming
See All in Programming
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
210
開発に寄りそう自動テストの実現
goyoki
2
1.7k
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
430
ZJIT: The Ruby 4 JIT Compiler / Ruby Release 30th Anniversary Party
k0kubun
1
310
[AI Engineering Summit Tokyo 2025] LLMは計画業務のゲームチェンジャーか? 最適化業務における活⽤の可能性と限界
terryu16
2
210
はじめてのカスタムエージェント【GitHub Copilot Agent Mode編】
satoshi256kbyte
0
140
チームをチームにするEM
hitode909
0
430
愛される翻訳の秘訣
kishikawakatsumi
3
370
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
160
それ、本当に安全? ファイルアップロードで見落としがちなセキュリティリスクと対策
penpeen
1
220
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
7
2.4k
SQL Server 2025 LT
odashinsuke
0
120
Featured
See All Featured
The Limits of Empathy - UXLibs8
cassininazir
1
200
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
180
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
1
210
Being A Developer After 40
akosma
91
590k
Everyday Curiosity
cassininazir
0
120
KATA
mclloyd
PRO
33
15k
How Software Deployment tools have changed in the past 20 years
geshan
0
31k
For a Future-Friendly Web
brad_frost
180
10k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
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