Scalable

Resiliency and scalability together make a system consistently responsive. A scalable system or an elastic system can easily be upgraded under a varying workload. A reactive system can be made scalable on demand by increasing and decreasing the resources allocated to service these inputs. It supports multiple scaling algorithms by providing relevant live performance for the scalability of the application. We can achieve scalability by using cost-effective software and cheap commodity hardware (for example, the Cloud).

An application is scalable if it can be extended according to its usage, in the following ways:

  • scale-up: It makes use of parallelism in multi-core systems.
  • scale-out: It makes use of multi-server nodes. Location transparency and resilience are important for this.

Minimizing the shared mutable state is very important for scalability.

Elasticity and Scalability are both the same! Scalability is all about the efficient use of resources already available, while elasticity is all about adding new resources to your application on demand when the needs of the system changed. So, eventually, the system can be made responsive anyway--by either using the existing resources of the system or by adding new resources to the system.

Let's see the final foundation of the resilient and scalability of the reactive pattern, that is, message-driven architecture.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset