How APM tools can help predict and prepare for traffic spikes
Organizations face serious challenges in predicting traffic spikes. Some tools can identify hidden patterns and help you prepare for an overwhelming surge in demand before it hits, but in many cases, traffic spikes are simply random events. Take heart, though: The right solutions and strategies can help you prepare for spikes, even when you don't see them coming.
The burden of mobility
Mobile technology makes traffic much harder to predict. Users can access a smartphone, unlike a desktop, at any time, from any location. By giving users easier access, mobile also encourages more frequent access. For example, financial customers use their phones to check balances or portfolio performance more often than they would with a desktop.
"The number of applications we use has grown, the types of applications we use have grown, and the way we access it has changed as well," says Zeus Kerravala, founder and principal analyst with ZK Research. "So all those things together lead to a lot more unpredictability when it comes to network traffic."
Mobile phones make traffic a lot more unpredictable.
— Zeus Kerravala, founder and principal analyst, ZK Research
Smartphones have also increased expectations for bandwidth-intensive experiences, adding to the burden on networks and servers. "Now there are a lot of real-time multimedia applications, video, voice over IP. Almost all the consumer devices we have today have rich interfaces on them," says Kerravala.
APM: Your application traffic report
Application performance monitoring (APM) can help organizations in three important ways:
- Predicting spikes in traffic
- Identifying spikes before they overwhelm networks and servers
- Preparing for random events that create a surge in demand
Kerravala says it's essential for your IT department to understand what normal traffic flows look like. APM helps you gain this understanding. "There may be times when spikes are predictable or cyclical," he says. "For example, at the end of every day when, if you're in a banking organization, perhaps a lot of brokers make calls to their clients using VoIP or do video calls to summarize what happened that day. The first step is putting in place visibility and monitoring tools to help understand what normal operations are like. Once you understand what normal operations are like, you can get much more predictive."
Setting this baseline is particularly critical when it's time to launch new features. "You've got to be prepared for your customers," says Mike Fratto, principal analyst on the Business Technology and Software team with Current Analysis. "There's nothing worse than launching a new service, and then it melts down in the first five minutes, because then your customers might say, 'I'm going away, and I'm never coming back.' "
There's nothing worse than launching a service and having it melt down in the first five minutes.
— Mike Fratto, principal analyst, Business Technology and Software, Current Analysis
Eyes on the apps
APM can also tell you when you're about to be in deep water. Monitoring the end-to-end response time of an application, as well as factors such as user experience, can help in spotting trends as they begin to emerge. If there's a sudden surge in demand that slows performance, you'll see it with APM and can pinpoint exactly where it is.
"We have a system that captures the analytics for our end users and allows us to focus our developers on what the users are using the most. Then we are able to proactively identify spikes and better react at the first sign of any slowdown to be able to nip it in the bud," says Yan Auerbach, chief operating officer and co-founder of Speech Trans, the developer of a speech translation application used in a variety of industries, ranging from the military to education to healthcare."You also have to be able to anticipate how to scale up your servers to handle those spikes when they do occur."
We proactively identify spikes to better react at the first sign of slowdown.
— Yan Auerbach, chief operating officer and co-founder of Speech Trans
APM's role is to establish a baseline measurement of performance. For example, you may want to establish a threshold of a two-millisecond response time for an application. Perhaps you have contingencies that say that, during a peak period, you will allow that response time to go up to three or even four milliseconds. The users are still willing to accept performance at that level, but if it starts to slow down even more, you have to have a plan in place to add capacity and reduce the effect of the slowdown; otherwise users are going to get frustrated.
Plan for success
Identifying when a spike is occurring is only half the battle. To be prepared for a spike, you've got to plan for it. If you don't have a plan in place, you're going to run into problems. APM can help here as well.
Synthetic monitoring helps you make sure you can deal with a sudden increase in demand. It allows you to simulate loads from different geographies, testing applications under stress circumstances to determine the best way to respond, so that when an actual spike in demand occurs, you can be confident that you have an effective plan in place to deal with it.
APM also helps you test your policies to make sure the scaling happens at the right time and to the right level. Conduct the right testing beforehand, and you'll already know how many servers you need to add under certain conditions.
It's like having a simulator for learning how to fly a jet.
At Speech Trans, Auerbach identified another important benefit of APM. "It's really helpful to me to see over the builds [of the application]," he says. "When customers submit a ticket for a bug, I am able to see what kind of device they're using, as long as it's a mobile device, and see where that request came in. If many people have that device, I can focus my limited resources on the thing that will help the greatest amount of people in the shortest period of time."
The toolbox for scaling your app infrastructure
While APM can help you devise the best plan for dealing with traffic spikes, you'll still need the right tools to carry out your plans.
Adding server capacity is a critical part of dealing with sudden increases in demand. Cloud computing provides a very useful service here. It delivers the elastic expandability to add server capacity on demand. When an application monitor identifies a problem, it can kick off the process for adding capacity. When demand falls back to a lower level, also monitored by APM, you can scale back the additional capacity. It's a very flexible situation, and that's where the cloud becomes really valuable.
Many organizations are deploying hybrid cloud environments to deal with spikes in demand. They run some part of their infrastructure in-house, and then when they need to scale additional capacity, it's very easy to go to a cloud provider.
Another effective way to deal with spikes is to deploy load balancers or application delivery controllers (ADCs) to serve as the connection point for your clients. "The load balancer or the ADC selects the best server to send connections to," says Current Analysis' Fratto. "It tries to distribute connections and traffic across all the available servers in your data center, so that no one server is getting hammered."
Fratto adds that the next step is global server load balancing, which can balance loads and redirect traffic around the globe. It also provides failover to direct traffic to an operating data center if your main data center happens to go down.
In an IT world where technology workers are increasingly stretched thin, automation offers significant benefits. Some software orchestration systems automatically take action in the event of a spike, Fratto notes. When the system sees that traffic has crossed a previously established threshold, it can automatically bring up more servers on the back end, boot them up, run the application, and join the servers to the pool. You may get an alert, but the action has already been taken.
Kerravala says software-defined networking can bring similar automation to network operations during a spike. "Organizations have to get over this concept of doing everything manually on the network," he says. "Automation can greatly help businesses adapt to these network spikes a lot more efficiently."
It's the plan, man
It's difficult to overstate the importance of effective planning in dealing with traffic spikes. Tools such as APM may identify patterns that predict a sudden surge, but in many cases, you just can't see a spike coming. Knowing how to deal with them is essential.
Kerravala sums the situation up well: "The unpredictable nature of network traffic has stumped network managers for years, but if you have the right visibility tools and do the right planning, most organizations can account for the majority of those traffic spikes," he says. "For every hour or dollar you spend on the front end in the planning of the network architecture, you're going to save yourself big on the back end."