Performance and scale
In previous chapters, we saw how it is possible and sometimes even necessary to break functionality down into fine-grained components that are physically separated from each other – requiring a network to collaborate. Let’s assume that this collaboration is achieved in a loosely coupled manner – justifying the need for disparate bounded contexts from a logical perspective.
Performance is a very important SLO that is typically associated with most applications. When it comes to performance, it is essential to understand the basic terms. This is best illustrated using an example as shown here:
Figure 12.1 – The elements of network performance
As shown here, the following terms are relevant in the context of performance:
- Latency: The delay introduced by the network (A + B)
- Response Time: the total time taken by the system to respond to the user (A + B + C)
- Bandwidth: The maximum capacity of...