Slovník
Scalability
Škálovatelnost je schopnost systému, aplikace nebo firmy zvládat rostoucí objem práce, provozu nebo poptávky bez kompromisů ve výkonu. Ve webovém vývoji to znamená, že aplikace obsluhující 100 uživatelů by měla být architektonicky schopná obsloužit 100 000 uživatelů bez kompletního přepsání, i když bude nutné postupně přidávat infrastrukturu.
Existují dva základní přístupy: vertikální škálování přidává výkon stávajícím serverům, horizontální škálování přidává další servery za load balancer. Moderní cloud-native architektury preferují horizontální škálování, protože se vyhýbá jediným bodům selhání. Mezi techniky podporující škálovatelnost patří read repliky databází, cachovací vrstvy s Redisem nebo Memcached, distribuce statických assetů přes CDN, bezstavový návrh aplikace a message queues pro oddělení služeb. Návrh s ohledem na škálovatelnost od počátku předchází nákladné rearchitektuře později, přestože přehnané inženýrství pro škálu, která možná nikdy nepřijde, plýtvá zdroji stejnou měrou.