With traditional software design multiple
applications run on individual physical
servers. That means if one
application is in high demand it
may consume an inordinate amount of
resources leading other applications
to underperform. Conversely
I. T. Organizations may provision
servers for peak usage of a single
application. That means that during
most usage hours the resources
are underutilized.
It also means each server likely
will need to be taken down to install upgrades
or to perform maintenance on a single
application.
Cloud native solutions overcome
these limitations through a modular
approach to building, running and updating
software
known as micro service architecture.
Cloud Native design relies on
a collection of quasi autonomous
functionalities called microservices
that typically are organized around business
capabilities.
Each micro service in turn is
made up of containers, discrete software
packages that include all settings,
libraries and other dependencies
needed to perform a single well defined
task. Microservices and
their containers communicate across a separate
piece of software called a container orchestration
platform such as kubernetes
containers decoupled functionality
is a game changer that enables
unprecedented flexibility and reliability
because they're essentially autonomous
containers can be deployed, tested,
maintained, updated or
even replaced without affecting
the rest of the solution
that means you can maintain and
upgrade a solution with zero downtime
and without fear of disrupting
other critical functionality.
Micro service architecture also delivers
another key advantage.
The container orchestration platform
that allows the microservices to work
in unison, Also automatically
load balances processing across
the solution. It does this by scaling
up shared virtual servers also
known as cloud nodes to meet peak
usage requirements for specific microservices
Once demand eases the nodes
are released, the practical benefits
of automatic load balancing are twofold
latency or the lag that can occur
with one application when another is at
peak usage becomes a thing of the past.
All microservices can access
the processing power they need in real
time to continue functioning optimally.
Thanks to this dynamic distributed
approach to computing consumption, solutions
can scale elastically to meet varying
user demands,
assuming public cloud services are used
practically infinite scalability
as possible with no fall off in
performance.