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
96
Search, Embeddings & Vector-DBs
chluehr
0
120
Reality Check: Automated Content Production at Enterprise Scale with Pimcore
chluehr
0
65
The how and why of getting Freelancers
chluehr
0
70
Content & Master Data Management with Pimcore
chluehr
1
660
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
レイトレZ世代に捧ぐ、今からレイトレを始めるための小径
ichi_raven
0
460
複数チーム並行開発下でのコード移行アプローチ ~手動 Codemod から「生成AI 活用」への進化
andpad
0
180
Rails Girls Sapporo 2ndの裏側―準備の日々から見えた、私が得たもの / SAPPORO ENGINEER BASE #11
lemonade_37
2
180
アーキテクチャと考える迷子にならない開発者テスト
irof
9
3.2k
TypeScript 5.9で使えるようになった import defer でパフォーマンス最適化を実現する
bicstone
1
220
PHPライセンス変更の議論を通じて学ぶOSSライセンスの基礎
matsuo_atsushi
0
170
Chart.jsで長い項目を表示するときのハマりどころ
yumechi
0
140
自動テストのアーキテクチャとその理由ー大規模ゲーム開発の場合ー
segadevtech
2
1k
Private APIの呼び出し方
kishikawakatsumi
3
890
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
280
「10分以内に機能を消せる状態」 の実現のためにやっていること
togishima
1
520
「正規表現をつくる」をつくる / make "make regex"
makenowjust
1
680
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Automating Front-end Workflow
addyosmani
1371
200k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
[RailsConf 2023] Rails as a piece of cake
palkan
57
6.1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
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