Meeting performance requirements in distributed systems
Responsiveness is an important non-technical requirement of an enterprise application. The system only provides business value if client requests can be served within a reasonable amount of time.
Meeting performance requirements in distributed systems requires to take all participating applications into account.
Enterprise application are often required to meet a service level agreement (SLA). SLAs usually define thresholds for availability or response times, respectively.
Service level agreements
In order to calculate and meet SLAs, it's important to consider which processes and applications are included in business use cases, especially in regard to synchronous communication. The performance of applications that synchronously call external systems directly depend on the performance of these calls. As mentioned before, distributed transactions should be avoided.
As per its nature, SLAs can only be met if all applications perform and work...