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
NU.nl performance and our journey in the Django...
Search
Besma
February 24, 2016
Programming
87
0
Share
NU.nl performance and our journey in the Django realm
These are the slides of my talk at the Django meetup hosted by Byte
Besma
February 24, 2016
Other Decks in Programming
See All in Programming
関係性から理解する"同一性"の型用語たち
pvcresin
2
630
OCRを使ってゲームのアイテムをデータ化する
kishikawakatsumi
0
130
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
330
Oxcを導入して開発体験が向上した話
yug1224
4
280
ReactとSvelteのその先、Ripple-TS / Beyond React and Svelte: Ripple-TS
ssssota
3
2k
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
13
3.3k
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
11k
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
160
プロパティの順序で型推論が壊れる!? TypeScript6.0の修正からContext-Sensitivityの仕組みを追う
bicstone
2
1.3k
CSC307 Lecture 17
javiergs
PRO
0
310
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
2
390
柔軟なPDFレイアウトエディタを支える型システム設計 — Discriminated UnionとConditional Typeの実践
minako__ph
4
1.3k
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
174
15k
Building Adaptive Systems
keathley
44
3k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.3k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
160
sira's awesome portfolio website redesign presentation
elsirapls
0
270
Crafting Experiences
bethany
1
160
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
550
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
310
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
200
The Limits of Empathy - UXLibs8
cassininazir
1
340
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
200
30 Presentation Tips
portentint
PRO
1
310
Transcript
[email protected]
NU.nl performance and our journey in the Django realm
Besma Mcharek-Boussif
[email protected]
Whoami @B35m4
[email protected]
Who are we? • The biggest Dutch news platform
– +1B pageviews
[email protected]
Our platforms • Web – Desktop and mobile •
Mobile – tablets, phones and smart watches
[email protected]
Development teams • Mobile team – Android – iOs
• Web/ApI and CMS team
[email protected]
Development process • DeVops mind set team • Tools
– Development: Jira, Bamboo, Hipchat – Monitoring: GA, New Relic
[email protected]
How do we work • Work within layers, depending
on the requirements
[email protected]
The nu.nl ecosystem
[email protected]
Web/Api team focus
[email protected]
Our output as Web/API team • Serving static pages
• Serve Push Notification for big news • Serve the raw data
[email protected]
Microservices • Projects that serve a single purpose •
Together projects create a microsystem that fits within the Sanoma ecosystem
[email protected]
Evolution the nu.nl stack • Time line – Past
– Current – Future...
[email protected]
Past ecosystem • The entire stack used to be
written in php • Development and maintenance by external party
[email protected]
Current ecosystem • Most of the stack in Django
• Development and maintenance by our team
[email protected]
Near future ecosystem • All of the stack in
Django • Development and maintenance by our team
[email protected]
Block structure • Business and editors decide on the
layout • Editors supply the blocks with content • Layout is served to FE and mobile
[email protected]
Challenges in the current setup Scale speed API errors
[email protected]
How do we deal with these challenges in general?
• Django security solutions • DRF as dataprovider • Caching • Rigorous testing
[email protected]
Performance sprint
[email protected]
How? Webservers • Software updated and servers rebooted •
Updated nu.nl stack to python 2.7 • Updated nu.nl stack from Apache to nginx • Disabled django.views.static.serve • Used Serpy as serializer
API server performance Before
API server performance After
[email protected]
Future challenges Personalization
[email protected]
Sanoma account
[email protected]
Personalized nu.nl
[email protected]
Other performance challenges • Pages are no longer static
• API: serving blocks instead of layouts to mobile applications
[email protected]
Challenges ahead
[email protected]
Questions