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
Performante Web-Apps [de]
Search
Christoph Lühr
February 26, 2014
Programming
1
160
Performante Web-Apps [de]
... mit Varnish & Co - getITtogether Feb. 2014 Berlin - 15min Talk; gekürzte Online Version.
Christoph Lühr
February 26, 2014
Tweet
Share
More Decks by Christoph Lühr
See All by Christoph Lühr
Vektor-Suche & LLMs
chluehr
0
22
Search, Embeddings & Vector-DBs
chluehr
0
53
Reality Check: Automated Content Production at Enterprise Scale with Pimcore
chluehr
0
11
The how and why of getting Freelancers
chluehr
0
48
Content & Master Data Management with Pimcore
chluehr
1
370
Master Data Management with Pimcore
chluehr
0
150
Swoole in 5 Minutes [en]
chluehr
1
12k
PIM & Master Data Management with Pimcore 5 [en]
chluehr
2
270
Digital Transformation & Master Data Management with Pimcore 5
chluehr
0
210
Other Decks in Programming
See All in Programming
Fragment Composition of GraphQL
quramy
13
1.4k
Behind VS Code Extensions for JavaScript / TypeScript Linnting and Formatting
unvalley
6
1.2k
Build Apps for iOS, Android & Desktop in 100% Kotlin With Compose Multiplatform (mDevCamp 2024)
zsmb
0
430
見た目から始める生産性向上
ikumatadokoro
10
1.3k
スクラムガイドのスプリントレトロスペクティブを改めて読みかえしてみた / Re-reading the Sprint Retrospective Section in the Scrum Guide
mackey0225
3
480
PHPの次期バージョンはこの時期どうなっているのか - Internalsの開発体制について - PHPカンファレンス小田原
youkidearitai
PRO
1
220
ServerAction で Progressive Enhancement はどこまで頑張れるか? / progressive-enhancement-with-server-action
takefumiyoshii
6
410
冗長なエラーログを削減し、スタックトレースを手に入れる / Reducing Verbose Error Logs and Obtaining Stack Traces
upamune
0
990
try! Swift Tokyo 初参加報告LT
hinakko2
0
230
PHPはいつから死んでいるかの調査
chiroruxx
2
420
初心者のためのRubyKaigi入門/RubyKaigi Introduction
a_matsuda
9
1.4k
Snowflakeで眠ったデータを起こそう!
estie
0
140
Featured
See All Featured
Debugging Ruby Performance
tmm1
70
11k
Art, The Web, and Tiny UX
lynnandtonic
290
19k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
188
16k
The Illustrated Children's Guide to Kubernetes
chrisshort
32
46k
Mobile First: as difficult as doing things right
swwweet
217
8.6k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
26
2.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
Designing with Data
zakiwarfel
96
4.8k
Optimising Largest Contentful Paint
csswizardry
12
2.4k
Become a Pro
speakerdeck
PRO
13
4.6k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
20
1.6k
Transcript
Performante Web Apps mit Varnish & Co. Christoph Lühr /
@chluehr getITtogether - Berlin 2014
Christoph Lühr Head of Development
basilicom SEIT 2000
Image source: http://www.flickr.com/photos/ethanlindsey/321225525/ CC BY 2.0
DEV
None
(#) Internet
None
Unicode Character 'HAPPY PERSON RAISING ONE HAND' (U+1F64B)
1 2 3
Performante Web-Apps
statisch dynamisch
Performance ➊ ➋ ➌
➊
Transfer-Rate
Transfer-Rate
➋
Latenz
RENDER C NETWORK D
➌
X
X
x Faktoren
CPU RAM HDD NETZ
CPU RAM HDD NETZ
t
t
CPU RAM HDD NETZ
R A M
R A M
CPU RAM HDD LAN = IO
IO
IO
RAM SSD WAN HDD LAN 0.05 μs 5 μs x100
x100 50 μs x1.000 x10 5000 μs x100.000 x100 500000 μs x10.000.000 x100
IO
CACHE
None
IO Queue + Worker
t
statisch dynamisch
statisch dynamisch
None
Reverse- Proxy
Varnish
Varnish
Varnish
Varnish
None
None
Multiple Backends
Varnish
Varnish
Varnish
Varnish
Varnish
Varnish
Partielles Caching Edge Side Inc.
Varnish
Varnish
FUBAR? Nachteile
• Content++ = RAM++ Hardwareanforderungen • !SSL Workaround: Pound Offloader
• Purge / Warm-Up Management • Konfiguration VCL
Ratiopharm? Alternativen
None
CDN Content Delivery Network
Fallstudie / Beispiel Adventskalender
None
None
None
None
App Größe 2.6 MB
HTTP Requests 16 Req/App
None
None
js js js js js js js js js js
js js
Ladezeit bei >6 Mbit 1-3 s
None
Transferrate ~300 Mbit/s
Peak Transfer (max.) ( ~4000 Mbit/s )
Transfervolumen / Top-H ~500 GB
HTTP Zugriffe 260 Req/s
System: Eine VM. (Varnish, Pound, Apache/PHP)
None
None
None
CPU RAM HDD NETZ CPU RAM HDD NETZ CPU RAM
HDD NETZ
None
Christoph Lühr email:
[email protected]
twitter: @chluehr web: http://basilicom.de ! ?
basilicom