ITNEXT

ITNEXT is a platform for IT developers & software engineers to share knowledge, connect, collaborate, learn and experience next-gen technologies.

Follow publication

Stupid Simple Scalability

Czako Zoltan
ITNEXT
Published in
7 min readSep 22, 2021

--

Photo by Elena Mozhvilo on Unsplash

This post will define and explain software scalability in Kubernetes and look at different scalability types. Then we will present three autoscaling methods in Kubernetes: HPA (Horizontal Pod Autoscaler), VPA (Vertical Pod Autoscaler), and CA (Cluster Autoscaler).

Scalability Explained

To understand the different concepts in software scalability, let’s take a real-life example.

Suppose you’ve just opened a coffee shop, you bought a simple coffee machine, which can make three coffees per minute, and you hired an employee who serves the clients.

At first, you have a few clients: everything is going well, and all the people are happy about the coffee and the service because they don’t have to wait too long to get their delicious coffee. As time goes by, your coffee shop becomes famous in town, and more and more people are buying their coffee from you. But there is a problem. You have only one employee and too many clients, so the waiting time gets considerably higher and people are starting to complain about your service. The coffee machine could make three coffees per minute, but the employee can handle only one client per minute. You decide to hire two more employees. With this, you’ve solved the problem for a while.

After some time, near the coffee shop, the city opens a fun park, so more and more tourists are coming and drinking their coffee in your famous coffee shop. So you decide to hire more people, but even with more employees, the waiting time is almost the same. The problem is that your coffee machine can make three coffees per minute, so now your employees are waiting for the coffee machine. The solution is to buy a new coffee machine. Another problem is that the clients tend to buy coffee from employees that they already know. As a result, some employees have a lot of work, and others are idle. This is when you decide you need to hire another employee who will greet the clients and redirect them to the employee who is free or has fewer orders to prepare.

Analyzing your income and expenses, you realize that you have many more clients during the summer than in the winter, so you decide to hire seasonal workers. Now you have three employees working full-time and the other employees are working for you only during the summer. This…

--

--

Published in ITNEXT

ITNEXT is a platform for IT developers & software engineers to share knowledge, connect, collaborate, learn and experience next-gen technologies.

Written by Czako Zoltan

I'm an experienced Full-Stack Developer, with experience in multiple domains including Backend, Frontend, DevOps, IoT, and Artificial Intelligence.

No responses yet

Write a response