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
Dart 参戦!!静的型付き言語界の隠れた実力者
kno3a87
0
180
抽象化という思考のツール - 理解と活用 - / Abstraction-as-a-Tool-for-Thinking
shin1x1
1
950
書き捨てではなく継続開発可能なコードをAIコーディングエージェントで書くために意識していること
shuyakinjo
1
250
kiroでゲームを作ってみた
iriikeita
0
150
令和最新版手のひらコンピュータ
koba789
13
7.2k
ゲームの物理
fadis
3
930
Reactの歴史を振り返る
tutinoko
1
180
バイブコーディングの正体——AIエージェントはソフトウェア開発を変えるか?
stakaya
5
840
GitHub Copilotの全体像と活用のヒント AI駆動開発の最初の一歩
74th
7
2.4k
新しいモバイルアプリ勉強会(仮)について
uetyo
1
250
なぜ今、Terraformの本を書いたのか? - 著者陣に聞く!『Terraformではじめる実践IaC』登壇資料
fufuhu
4
550
MCP連携で加速するAI駆動開発/mcp integration accelerates ai-driven-development
bpstudy
0
290
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
246
12k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Art, The Web, and Tiny UX
lynnandtonic
301
21k
The Invisible Side of Design
smashingmag
301
51k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Docker and Python
trallard
45
3.5k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Rails Girls Zürich Keynote
gr2m
95
14k
4 Signs Your Business is Dying
shpigford
184
22k
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