Thursday, November 07, 2013

Improving Performance

The two factors that determine the system performance are as follows:
  • Processing time—The processing time includes the time spent in computing, data marshaling and unmarshaling, buffering, and transporting over a network.
  • Blocked time—The processing of a request can be blocked due to the contention for resources, or a dependency on other processing. It can also be caused by certain resources not available; for example, an application might need to run an aggressive garbage collection to get more memory available for the processing.
The following practices are commonly used to increase the system performance:

  • Increase the system capacity by adding more raw processing power.
  • Increase the computation efficiency by using efficient algorithms and appropriate component models technologies.

Introduce cached copies of data to reduce the computation overhead, as follows:

  • Introduce concurrency to computations that can be executed in parallel.
  • Limit the number of concurrent requests to control the overall system utilization.
  • Introduce intermediate responses to improve the performance perceived by the user.

No comments: