Auto-scaling Flashcards
What is a vertical scaling? What are the advantages and disadvantages?
(scaling up)It is increasing the capacity of a single service by increasing its resources.
advantages :
No design changes must be done.
easy to replace a resource.
disadvantages:
more powerful resource is more expensive
changing resource leads to interrupts
resource capacity is limited
What is a horizontal scaling? What are the advantages and disadvantages?
(scaling out)Increase the capacity of a service by adding more instances.
advantages:
no requirement for more powerful resources.
disadvantages:
more resources means more management overhead.
Horizontal scaling requires a distributed software architecture.
Name the 3 auto-scalling approaches and explain each.
Reactive:
Detect under/over loaded service and scale in and out
Scheduled:
Policy specifies scaling events (timestamp scaling actions) and apply scaling actions at appropriate time.
Predictive:
Predict the future workload and scale ahead of time.
What are the goal of load balancing?
1.To utilize a set of resources in an efficient way.
2.to use the aggregated capacity of replicas to reduce response time
3.increase availability
What are the 2 load balancing types and what is the difference?
Static and dynamic load balancing.
Dynamic will report the status.
Mention and explain the types of dynamic load balancers.
A dynamic load balancer can be distributed or non distributed .
A distributed load balancer is when the nodes collaborate.
There are 2 types of distributed load balancer: Cooperative and non-Cooperative
Cooperative is when they have same goal and non-Cooperative is when they have different goals.
Non-distributed load balancer can be centralized or semi-distributed.
Centralized is one central LB.
semi-distributed is when the nodes are partitioned and one LB is responsible for partition
What load balancing algorithm do you know?
1.(weighted)Round robin: distributes to servers in round robin
2.(weighted)least connection: distributes to servers with least number of active connections
3.resouce based: CPUload of servers is taken into account
4.weighted response time: the weights are the response time of a health check