Skalabilitas Aplikasi Web

Post on 18-Aug-2015

116 views 0 download

Transcript of Skalabilitas Aplikasi Web

Skalabilitas Aplikasi Web

Mohammad Anwarimdamt@di.blankon.in

2015.08.11

SkalabilitasVertikal vs. HorizontalSkalabilitas vs. PerformaPerencanaan Kapasitas

● Data masuk/keluar● Jumlah dan waktu pakai pengguna● Bandwith masuk/keluar● Memahami batas atas sumber daya● Statistik (rata-rata dan puncak)

● Infrastruktur● Arsitektur aplikasi● Basis data

Tiga area skalabilitas

Infrastruktur

● Arsitektur layanan○ Storage, computing, db, surel○ Load balancing○ H/A○ Caching○ Layanan aset statis, cdn, kompresi

● Multisite vs single point of failure

Arsitektur aplikasi

● Microservices vs. monolitik● Pemrosesan di sisi klien vs. sisi peladen● Worker process vs. standalone● Async vs. sync● Pemilihan framework ● Single page vs. multipage● Data caching● Memahami titik kritis aplikasi

Load balancer

Statics API

Data

Pola arsitektur

Load balancer

Statics

API

DB

API

FS

Contoh arsitektur

Basis data

● Optimasi indeks● Teknik paging● Stored procedures vs. pemrosesan di klien● Master/slave vs. monolitik● Partitioning vs. sharding

Arsitektur master/slave

Master Slave Slave

Analisis masalah

● Lakukan benchmark○ wrk / ab○ Chrome/Firefox developer tools

● Lakukan pengukuran di tiga area tadi● Telusuri penyebabnya saat area

penyelidikan sudah mengerucut● Refaktor

1 detik 0.7 detik 0.3 detik

DB App Infrastruktur