Chapter 4. Analyzing and Tuning a Distributed System
Overheard at work: "We care about two things: speed and quality. And the quality we care about is speed" –Brad Abrams>
Despite the fact that ServiceStack is built with performance in mind, there are several sources that degrade the performance of a system. The sources that can degrade the performance issues are as follows:
- Inefficient algorithms: Poor algorithm affects the execution time with minimal load and becomes an even bigger problem under heavy load, due to maxing out resources.
- Inefficient access paths: Queries against data stores are executed in an improvable manner (for example, by adding an index to queried columns).
- Concurrency issues: The introduction of concurrency also calls for a synchronized access of shared registers that can make the time spent on synchronization more significant by umpteen competing threads. Another issue in this context are weakly designed synchronization mechanisms that...