There are a bunch of situations where the client-server architectural style can be used. Let's review some typical examples, in order to better understand this approach.
As mentioned previously, databases commonly fit this architectural style. Currently, we have many database vendors available in the market, and the majority of them only offer the chance to scale vertically. Two classic examples of this approach are SQL Server and PostgreSQL. However, there are options to scale horizontally, as well. The most well-known database following this model is Cassandra, which is a database created by Facebook that was later adopted as an Apache project. This database uses a ring model to connect different nodes, where the data is stored. In this manner, you can add as many nodes as you need to, in order to support high-availability...