April 2017
Intermediate to advanced
556 pages
11h 5m
English
So far, all the scalability and concurrency techniques we discussed were involved with scalability within the confines of a single server or machine—in other words, scaling up. In real world, applications also scale by scaling out, that is, by spreading their computation over multiple machines. This is how most real-world web applications run and scale at present.
We will look at a few techniques, scaling out an application in terms of scaling communications/workflows, scaling computation, and horizontal scaling using different protocols.