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
170
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
89
Search, Embeddings & Vector-DBs
chluehr
0
110
Reality Check: Automated Content Production at Enterprise Scale with Pimcore
chluehr
0
61
The how and why of getting Freelancers
chluehr
0
67
Content & Master Data Management with Pimcore
chluehr
1
620
Master Data Management with Pimcore
chluehr
0
200
Swoole in 5 Minutes [en]
chluehr
1
12k
PIM & Master Data Management with Pimcore 5 [en]
chluehr
2
300
Digital Transformation & Master Data Management with Pimcore 5
chluehr
0
240
Other Decks in Programming
See All in Programming
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
350
時間軸から考えるTerraformを使う理由と留意点
fufuhu
16
4.8k
How Android Uses Data Structures Behind The Scenes
l2hyunwoo
0
480
複雑なドメインに挑む.pdf
yukisakai1225
5
1.2k
JSONataを使ってみよう Step Functionsが楽しくなる実践テクニック #devio2025
dafujii
1
640
もうちょっといいRubyプロファイラを作りたい (2025)
osyoyu
1
460
そのAPI、誰のため? Androidライブラリ設計における利用者目線の実践テクニック
mkeeda
2
2.8k
ProxyによるWindow間RPC機構の構築
syumai
3
1.2k
Deep Dive into Kotlin Flow
jmatsu
1
370
Processing Gem ベースの、2D レトロゲームエンジンの開発
tokujiros
2
130
チームのテスト力を鍛える
goyoki
3
930
「手軽で便利」に潜む罠。 Popover API を WCAG 2.2の視点で安全に使うには
taitotnk
0
870
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
330
21k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Speed Design
sergeychernyshev
32
1.1k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
How GitHub (no longer) Works
holman
315
140k
RailsConf 2023
tenderlove
30
1.2k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
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