Measuring Traffic Load and API Requests per Second: An Interview with Load Impact

As websites launch and web services scale, having a keen understanding of the traffic load impacts becomes a key issue for many businesses. It is a performance Function that has been given front page news exposure this week, with US media reporting on the failure of Federal and State health agency sites to meet online traffic demand for information on new health insurance arrangements. Swedish startup Load Impact – which has just established a US office in San Francisco – provides services to help avoid performance failure caused by traffic surges to websites, or error returns due to high levels of Polling to API services.

ProgrammableWeb caught up with the Load Impact team to discuss how API consumers and providers can make use of the performance metrics service.

CEO and Founder Ragnar Lönn has led Load Impact through its initial growth from a software company to a server metrics specialist, to providing the current toolkit aimed at professional developers.

“Our Load Impact on-demand tool for load testing can boot up a large number of servers via the cloud to be able to see performance impacts, it is a more economical approach to stress testing your website or web services to see how many users you can handle”, Lönn said.

The on-demand tool includes parameters that allow users to define stress tests that configure the number of users coming to the site, their geo-location, how long they visit the site and which pages, and other factors that mimic potential real site usage. Savvy businesses can also enter competitor’s websites to compare their own load performance with that of their key industry rivals in order to develop a benchmark and ensure that your User Experience is better than those around you.

“Our system lets you test your load capacity for higher levels of traffic than you actually have,” said Alex Bergvall, Load Impact’s Performance Specialist, who has just relocated to the San Francisco office. “And for API testing, it is even easier: if you want to test different API functions, it is simpler to test APIs than sites. You just test different API functions, such as how many requests [can be handled] per second.”

“Our system lets you test your load capacity for higher levels of traffic than you actually have,” Lönn added. “You can simulate a day of activity, its easy to do complicated execution plans around how people come to the site.”

Two of the key uses for the tool are for developers who are launching new websites where high volumes of traffic are expected from the outset, or for those developers looking at Scaling their web services, who want to see whether existing cloud and server infrastructure can handle the entry unto new markets. A new Service Metrics Agent can operate behind an enterprise’s firewall and help businesses pinpoint exactly where the load strain on the servers comes from.

It is a service that could have been used by the US Federal government and State of California’s web departments in recent days. A new Federal website, for example, has crashed spectacularly when it could not handle the number of website visits seeking detailed information on the new Health Care Affordability Act. The website aimed to compare different insurance plans, but was ill equipped to handle the demand for the service on day one. “[On Monday], on the front page of the Wall Street Journal above the fold: that’s where we live at the moment,” said General Manager, Charles Stewart. A similar problem has since emerged for California’s health department website.

Inaccessible websites can color community perception – in this case – of the underlying policy goals of the new healthcare provisions, but for enterprises in a similar case, it can build lack of trust amongst potential customers, losing them forever. This is particularly the case for ecommerce vendors.

So far, two studies conducted by Load Impact show that ecommerce websites are one of the worst-performing industries in terms of providing a consistent and accessible user experience.

“Ecommerce are very interested in performance, they spend a lot of money on load testing but they often outsource this work,” said Lönn.

Other industries particularly interested are creative agencies and not-for-profits. “Media is a surprising one,” explains Stewart. “Digital agencies are facing a seachange where the onus would normally be on the client to test performance, but they have discovered since they don’t have control over that environment, they have to test it themselves.” Major sporting events, for example, can see a sudden influx of global traffic at the time of an event, and Load Impact allows agencies to forecast in advance the load provisions of their client’s websites at key times.

At the other end of the spectrum, not-for-profits can use the service to ensure that fundraising efforts are not wasted on sites that cannot handle the level of donations being made. “We help them find the Goldilocks situation: the right level of content delivery to manage the load,” Stewart said.

Developers have full access to the on-demand tool via the Load Impact API. This includes the ability to define user scenarios and configure load parameter cases to be measured. Data can be streamed direct into a developers preferred dashboard or proprietary reporting system.

“We are working on a more comprehensive product for Continuous Delivery, and we think that market would be more interested in the API for nightly tests,” Lönn. Said. “There could be other uses, where people want to run automatic tests, rather than do it manually. In the development environment, developers may want to test this as an acceptance test that they can easily integrate into their own reporting.

“We see more and more developers doing load testing as part of their development, but the bulk are doing it before major releases. In the future, we believe developers will be using load testing as a part of their standard development methodology.”

Be sure to read the next API article: Search-as-a-Service and API-as-Product: An Interview with Algolia