The key drivers are as follows:
- Applications are unable to handle the increase in workload.
- End users are incurring delays in response times.
- The application is unable to queue requests and process it during reduced load phases.
- Non-distribuable computation or resource: Any computation or a resource, if not distributed, is highly likely to cause a bottleneck scenario.
- For instance, a single server node is an example of a resource that is not distributed.
- High resource-consuming component or computation: Any computation or a software component that consumes massive resources, such as CPU, memory, or network under normal workload, could potentially become a bottleneck.