Best Practices Brief: Improving Application Performance
Don't wait till business processes are disrupted before managing performance.
Hey, 1992 called, and it wants its excuses back. With Gigabit Ethernet enterprise desktop connectivity common, multigigabit links between switches, and 10 Gigabit Ethernet growing in popularity as prices drop, it's time to stop blaming your network for lackluster application performance. There are best practices you can follow to improve performance, even head off impending degradation. Here's an overview.
1. Plan Ahead For Growth
Application performance should always be taken into consideration when evaluating new technologies or making architectural decisions, including increased use of virtualization and software as a service. To plan for growth, you also need to get a baseline of current performance limitations, by understanding how your apps operate. When acquiring new products, buying a larger application delivery system from vendors such as Blue Coat, Citrix, or F5 means you can scale as demand grows via modularized feature sets that can be enabled through additional licenses.
2. Know Where Your Users Are
Today's employees are distributed across your offices, their homes, plus hotels and customer sites. The best method for delivering applications will vary based on whether a user is inside your network or outside, the quality and capacity of the network connection, and whether any intervening devices manipulate traffic, as in proxy caching or network address translation. Web application performance can be drastically improved by installing an application front end and routing clients through it.
3. Get Visibility Into Your Network
Today's applications are usually built in an n-tier architecture (see chart, above). Most IT pros are familiar with a three-tier design, but service-oriented architectures can add complexity. IT must understand order of dependencies and flow of data between systems to find potential bottlenecks or areas of improvement.
4. Create Metrics And Set Goals
For goal setting, first prioritize applications based on performance requirements. Determine which applications won't tolerate high latencies. Assess how much latency reduction you can feasibly achieve between endpoints, and determine which applications need capacity to move files or large blocks of data. Set benchmarks that trigger alerts when performance degrades or demand increases. The sooner you detect impending issues, the more likely your team can address them before users are affected.
5. Find The Bottlenecks
Once baselines, priorities, and metrics are in place, investigate where application performance problems originate. Armed with an understanding of your application infrastructure, IT can target analysis at critical points. If you use a WAN service provider for remote offices, you can, and should, request network statistics.
6. Examine Asymmetric Options
Options for network-based performance management vary based on type of app and user location. Asymmetric systems typically are situated on the server side and control the uncontrollable--the client population. They provide functions like load balancing, connection pooling, protocol optimization, and data caching. Each method addresses a particular performance issue and can be used alone or in combination.
7. Examine Symmetric Options
Symmetric optimization methods require similar processing capacity on both ends of the connection, enabled either by network devices intercepting and optimizing the traffic or software running on clients and servers. For example, data deduplication is an optimization method that drastically reduces the amount of data sent over the WAN--so much so that you may cut well over 50% of data transfer volume.
8. Integrate APM
Get the full-length
Analytics Report at:
apm.informationweek.com
>> See all our Analytics Reports <<
The trend in networking, virtualization, and the data center is agility--the ability to quickly respond to demand and roll out new services on the fly. The analysis provided by application performance management enables automated provisioning and app management. Cloud service providers are on the cutting edge of automated system management where, as demand increases, the APM system decides when new servers are turned on or off.
9. Test Application Performance
Once you design your application delivery strategy, testing will let you determine, in a methodical way, the limits of the organization's application infrastructure and how it behaves when faced with varying traffic loads. A consistent testing methodology also provides a repeatable way to measure the impact of changes.
10. Close The Loop, And Repeat
Every IT process is a cycle, and application delivery is no different. As new apps come online, revisit your plan for growth, assess how well results met initial goals, and determine whether testing methodologies need to be updated or infrastructure changes must be made.
The "n" in an n-tier architecture refers to the number of components in an application. A three-tier setup (top) is common, but SOAs can have three or more tiers plus multiple service paths (bottom). Application delivery systems must account for all tiers.
About the Author
You May Also Like
2024 InformationWeek US IT Salary Report
Aug 15, 20242024 InformationWeek US IT Salary Report
May 29, 20242022 State of ITOps and SecOps
Jun 21, 2022