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
Un site web mobile en Django
Search
Timothée Peignier
April 15, 2012
Programming
1
430
Un site web mobile en Django
Timothée Peignier
April 15, 2012
Tweet
Share
More Decks by Timothée Peignier
See All by Timothée Peignier
Dr. Rubocop
tim
0
170
Et votre backoffice ?
tim
0
260
Mesurer (par)tout, tout le temps
tim
2
660
Mobile Web Performance
tim
1
310
Other Decks in Programming
See All in Programming
ビルドプロセスをデバッグしよう!
yt8492
0
100
理論と実務のギャップを超える
eycjur
0
200
Designing Repeatable Edits: The Architecture of . in Vim
satorunooshie
0
130
スキーマ駆動で、Zod OpenAPI Honoによる、API開発するために、Hono Takibiというライブラリを作っている
nakita628
0
330
Reactive Thinking with Signals and the Resource API
manfredsteyer
PRO
0
120
When Dependencies Fail: Building Antifragile Applications in a Fragile World
selcukusta
0
110
Using Types to Save Your Code's Future
rollbear
0
100
3年ぶりにコードを書いた元CTOが Claude Codeと30分でMVPを作った話
maikokojima
0
700
퇴근 후 1억이 거래되는 서비스 만들기 | 내가 AI를 사용하는 방법
maryang
1
120
Register is more than clipboard
satorunooshie
1
130
ALL CODE BASE ARE BELONG TO STUDY
uzulla
28
6.8k
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
390
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
The World Runs on Bad Software
bkeepers
PRO
72
11k
Being A Developer After 40
akosma
91
590k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Side Projects
sachag
455
43k
Building an army of robots
kneath
306
46k
Writing Fast Ruby
sferik
630
62k
Designing Experiences People Love
moore
142
24k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Transcript
Un site web mobile en Django m.20minutes.fr
contraintes léger, rapide et versatile
léger RAM 256-1024 Mb CPU 600Mhz-1.2Ghz
léger Servir une version compressé Servir le strict nécessaire
django-pipeline concatenation + compression (js, css, html) + template js
https://github.com/cyberdelia/django-pipeline léger
rapide 100-500ms de latence 200kb/s-800kb/s en téléchargement
Limiter le nombre de requêtes Tricher sur les interactions rapide
rapide Donner une impression de rapidité
versatile Une seule implétementation pour tous les terminaux
versatile Servir la version la plus légère par défaut Pouvoir
servir pour n’importe quelle taille (images, vidéos, etc.)
versatile Tester, tester, tester.
le récap’ léger RAM/IO rapide Edge / 3G versatile Screen
/ OS
tenue en charge mesurer et réagir
Pages vues 6 645 000 Visites 3 125 000 en
chiffres #
Varnish Apache + modWSGI architecture MySQL & Redis
mixins class VideoListView(CacheControlMi xin, PaginationMixin, ListView): paginate_by = 10
cache_timeout = 60 https://gist.github.com/1231560
jitter class VideoDetailView(JitterCacheC ontrolMixin, DetailView): cache_range = [40, 80]
https://gist.github.com/1231560
mesurer applicatifs infrastructure logs notifications
mesurer applicatifs + infrastructure statsd collectd metrology https://github.com/cyberdelia/metrology
mesurer logs
mesurer notifications à toute l’équipe
réagir Métriques importantes à portée Date et contenu du
dernier déploiement
réagir Visualiser les problèmes et leur résolutions
réagir Avoir un accès direct aux erreurs
prévenir Vérifier et tester automatiquement hooks + tests +
ci + rollback
prévenir git hooks (pep8 + pyflakes) https://gist.github.com/2343286 self.assertMaxQueries(5) https://gist.github.com/2320495
le récap’ tout mesurer réagir en fonction prévenir en amont
Merci beaucoup (ne soyez pas timide, posez une question et
passez me dire bonjour ensuite) @cyberdelia