IT System Performance

IT System Performance is often an after thought after struggling through functionalities. During system development cycles, we often devote our resources to ensure system meet all the necessary functions as business requirements specified. Even with all necessary software testing done, system could still suffer catastrophic failure due to lack of system performance considerations done.

Understand Performance Requirement

Understanding system performance target is the first step for successful performance system engineering. Often business does not know the system performance required for a system to be successful. performance architect would have to ask the right questions to get the answers.

System Architecture Review

Discuss with an experienced system architect to review how a system functions. Through architecture review, performance architect can help validate appropriate system architect has been used to address system functionalities, some of which could have serious performance impacts.

Scaling Up a System

Simplest way to scale up a system is just use a larger computer with more CPUs and Memory. While this technique has its limitation, it can be done very quickly especially if the workload is already running in the cloud, it may not be as simple if the system is running a physical server. Also, some software system may not benefit from running on more CPUs or memory.

Vertical scaling breaks up a system to run in different stages or server instances like a chain which allow more computing power used to help speed up a system. This is one of

Horizonal scaling breaks up workload by using multiple identical servers to handle work in parallel. Load Balancing is critical for successful horizontal scaling. Horizontal scaling is one of most commonly used technique for scaling up, there are limitations and additional considerations to ensure overall system reliability.

Avoid System Bottleneck

In a large scale system, there are always some shared resources. The most common bottlenecks are load balancer, server, database system, network hub. Review with a performance architect to understand the bottleneck and derive strategy to mitigate the effects of the bottlenecks.

Performance Testing

Performance Testing ensure system owner to understand the level of performance a system able to handle. Performance architect helps plan a performance test plan, execute test plan and review results with system owner.

Monitoring and Review

With appropriate planning and instrumentation, after a system went live, performance monitoring team can monitor, analysis usage cases and system performance. Through these reviews, performance architect can help find possible unidentified performance risks and address them before disaster strikes.

Leave a Reply

Your email address will not be published. Required fields are marked *