Software Architecture in Golang: Scalability vs Elasticity

preview_player
Показать описание
Scalability and Elasticity are two terms typically used interchangeably but they mean different things, in this video I summarize their differences and I give you examples of what they mean.

== What is Scalability?

Scalability is the non-functional requirement that describes the capacity of a system to handle workloads by adding or subtracting provisioned resources to meet the demand growth.

== What is Vertical Scalability?

Scaling vertically is also known as Scaling Up and Scaling Down, what this means is modifying a property of a provisioned resource to increase or decrease its value.

== What is Horizontal Scalability?

Scaling Horizontally is also known as Scaling Out and Scaling In, what this means is literally means adding more servers to handle the workload.

== What is Elasticity?

Elasticity is the non-functional requirement that defines the ability to adapt to workloads by dynamically growing or shrinking the amount of resources our system is using.

== Relevant links

== All Go/Golang Playlists

== Socials

00:00 - Introduction
00:11 - What is Scalability?
00:31 - What is Vertical Scalability? Scale Up/Scale Down
01:09 - What is Horizontal Scalability? Scale Out/Scale In
02:22 - Conclusion

=== Who am I?

Hello👋🏼! I'm Mario, a Hands-on Software Architect and Lead Backend Engineer with more than 16 years of professional experience building all kinds of software including on-premise Industrial Automation Systems, Linux Accessibility Desktop and Browser Components as well as Distributed Advertising Microservices.

Every week I will share with you different topics I've learned while working for small startups and large companies including the processes I've followed over the years for successfully delivering complex enterprise systems from start to end.

Subscribe if you like Software Development, Software Architecture and Systems Design!

Keep it up. Don't give up!

#golang #softwarearchitecture #systemdesign

=== Our Vlog Channel

=== Affiliate links

DISCLAIMER: Some of the links shared above are affiliate links. As a member of these affiliate programs, I earn a small commission from your purchases at no additional cost to you. Thank you in advance for your support!
Рекомендации по теме
Комментарии
Автор

Thank you so much, this is one of the best explanations I found so far.

joseantonioflores
Автор

Great new format. It fits great to the rest of your videos. #kudos 👏

sta_____rk
Автор

Thank you. I finally got it what's the difference between those terms.

marcin
Автор

Hi, thanks for the video. I am preparing for AZ-900. I have seen the Learn, training days and even other resources and there is no congruence between them.

In Learn they don't mention the concept of elasticity. And in training they handle it as the same thing only they say that scalability is vertical and elasticity is horizontal.

Just to make sure I understood correctly, would you say that these concepts are correct?

Elasticity: the ability to adapt to workloads by dynamically increasing or decreasing the amount of resources used by the system.

Scalability: the ability of a system to resize to control the changing load.

YamilAguasChumacero