Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Falcon — очередная WSGI библиотека? Дмитрий Кук...
Search
IT-People
July 25, 2016
Programming
0
270
Falcon — очередная WSGI библиотека? Дмитрий Кукушкин, Wargaming
Выступление на конференции PyCon Russia 2016
IT-People
July 25, 2016
Tweet
Share
More Decks by IT-People
See All by IT-People
Александр Кошкин, Positive Technologies: Знай и люби свой CPython во имя луны и великой справедливости
itpeople123
1
200
How Python was Shaped by leaky Internals, Armin Ronacher, Flask framework
itpeople123
1
230
Building social network with Neo4j and Python, Андрей Солдатенко, Toptal
itpeople123
1
230
Осторожно, DSL! Иван Цыганов, Positive Technologies
itpeople123
0
120
Докеризация веб-приложения на Python Антон Егоров, Ostrovok.ru
itpeople123
0
190
Python Robot Operating System вместо Middleware framework Дмитрий Киселев, Endpoint.com
itpeople123
0
100
Очереди задач без купюр, Артем Малышев, Positive Technologies
itpeople123
1
110
Flame graph: новый взгляд на привычное профилирование, Кирилл Борисов, Яндекс
itpeople123
1
260
Как добавить scripting в веб приложение, Константин Лопухин, Scrapinghub
itpeople123
0
150
Other Decks in Programming
See All in Programming
ゆくKotlin くるRust
exoego
1
130
SwiftUIで本格音ゲー実装してみた
hypebeans
0
470
0→1 フロントエンド開発 Tips🚀 #レバテックMeetup
bengo4com
0
270
脳の「省エネモード」をデバッグする ~System 1(直感)と System 2(論理)の切り替え~
panda728
PRO
0
110
エディターってAIで操作できるんだぜ
kis9a
0
750
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
160
Giselleで作るAI QAアシスタント 〜 Pull Requestレビューに継続的QAを
codenote
0
270
これならできる!個人開発のすゝめ
tinykitten
PRO
0
120
AIコーディングエージェント(NotebookLM)
kondai24
0
220
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
4
920
実はマルチモーダルだった。ブラウザの組み込みAI🧠でWebの未来を感じてみよう #jsfes #gemini
n0bisuke2
3
1.3k
dotfiles 式年遷宮 令和最新版
masawada
1
810
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
980
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.5k
Docker and Python
trallard
47
3.7k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
Practical Orchestrator
shlominoach
190
11k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
64
35k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.2k
Navigating Weather and Climate Data
rabernat
0
46
Exploring anti-patterns in Rails
aemeredith
2
200
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.8k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Transcript
FALCON Yet another WSGI library? Дмитрий Кукушкин Software Engineer
2
3 •500 000 игроков / 50 000 кланов •10 000
провинций •50 000 RPM Глобальная карта для WoT
4 •OSM data Исходные данные
5 •OSM data •JS Single Page App Исходные данные
6 •OSM data •JS Single Page App •Tiny Backend API
Исходные данные
7 •OSM data •JS Single Page App •Tiny Backend API
•Много PostGIS, SQL и Python Исходные данные
8 •Django •Bottle •Flask •Falcon Что выбрать
9 •Только API Что хотим
10 •Только API •SQLAlchemy Что хотим
11 •Только API •SQLAlchemy •Не потерять скорость разработки Что хотим
12 •Только API •SQLAlchemy •Не потерять скорость разработки •Действительно быстрый
API Что хотим
13 •Только API •SQLAlchemy •Не потерять скорость разработки •Действительно быстрый
API •Поменьше велосипедов Что хотим
14 •1 GET End-point •Параметр в URL (/conferences/{name}/) •Query -
параметр (/conferences/{name}?highlight=1) •1 заголовок запроса и ответа •10 KiB random text Сценарий
15 Скорость
16 Скорость
17
18 •CPython 2.6 / 2.7 •PyPy •CPython 3.3 - 3.5
Python
19 # api.py import falcon class HelloResource(object): def on_get(self, req,
resp): resp.status = falcon.HTTP_200 resp.body = 'Hello from Minsk!' app = falcon.API() app.add_route('/nohello, HelloResource()) >>> gunicorn api:app Пример!
20 •Falcon Сборка истребителя
21 •Falcon •SQLAlchemy + alembic Сборка истребителя
22 •Falcon •SQLAlchemy + alembic •invoke - command line interface
Сборка истребителя
23 •Falcon •SQLAlchemy + alembic •invoke - command line interface
•RQ Сборка истребителя
24 •Request/Response •Cookies •Routing •Middleware Что есть в боекомплекте
25 •l10n and i18n Что не хватило
26 •l10n and i18n •sessions and auth Что не хватило
27 •l10n and i18n •sessions and auth •CSRF Что не
хватило
28 “+” “-” • Быстрый • Прост в использовании •
Хорошо документирован • Не популярен • Мало библиотек • Нет стандартов организации кода
29
30 •falcon-i18n •falcon-redis-sessions •falcon-csrf •…. Будем делиться
31 •https://falconframework.org/ •https://github.com/wgnet Ссылочки
Спасибо!
Дмитрий Кукушкин Software Engineer +375-29-776-47-88 https://www.facebook.com/WargamingMinsk Вопросы?
[email protected]
wargaming.com https://www.linkedin.com/company/wargaming-net
OUR PROJECTS
None