Welcome!

Web 2.0 Authors: Pat Romanski, Esmeralda Swartz, Kevin Benedict, Tim Hinds

Related Topics: SOA & WOA, Java, AJAX & REA, Web 2.0, Cloud Expo, Big Data Journal

SOA & WOA: Article

Part 3 | Five Steps to Improve E-Commerce Performance for Increased Sales

Network Performance

This is the third episode of the mini-series on e-commerce performance management. Our client TescaraHats (name changed for commercial reasons), a European market leader in manufacturing customized hats, did not achieve the expected sales increase with its new e-commerce site. It offered its customers the ability to customize and order hats online instead of visiting its brick and mortar locations, but customers seemed disinterested. TescaraHats learned quickly that there is much more to an e-commerce platform than simply putting an e-commerce service online.

In previous posts we showed that increasing page rank is not the only way to boost sales and that checking and improving back-end performance of your e-commerce is also critical. In this episode we show why you should not keep network load and HTTP errors in check.

Avoid Unnecessary Network Load
Although broadband connection is now a commodity and many Internet users can stream HD videos online from rental services like Netflix, you should still keep the size and the download time of a web site in check. In order to maximize the usability of your site, you should ensure it loads quickly. This is true on mobile devices as well because mobile e-commerce (a.k.a. m-commerce) is said to be taking over the market share.

To begin, check how much time is spent on the network to complete each page. Longer network time, as seen in Figure 1, may indicate that you are pushing unnecessarily heavy content to the client, or the server is busy generating (on the fly) some non-HTML components of the page.

Figure 1: Avoid unnecessary network load: check operation time breakdown and number of hits

Next, make sure your site is properly cached. If a web browser needs to download the same content over and over, even if the page is not too heavy, the footprint of your whole site becomes a burden for returning visitors or those who spend more time on the site.

Figure 2: The speed of the web report tells you if your site is too heavy or the cache is not properly optimized

The report in Figure 1 shows an inflated hits per operation ratio, which may mean that the content is not properly cached. Figure 2 shows a report from the Speed of the Web service, which was used to analyze TescaraHats e-commerce site. The report aligns with findings reported in Figure 1: the caching is not properly configured. Figure 3 shows a similar report from the perspective of images served from TescaraHats site. Both reports indicate that there are too many resources, e.g., images and JavaScript files, served from the same domain.

Figure 3: Analyze the images which need to be downloaded with e-commerce pages to see if you can reduce their number or size, or both

Although the bandwidth of the network connection is usually not a problem these days, the web browsers can only open a limited number of parallel connections. When the page consists of too many items, the site is unable to download them all at once. Figure 4 illustrates the problem with a page sequence load step chart report.

Figure 4: Too many page components cannot be downloaded in parallel, they affect the complete page load time

To solve the network load problem you need to:

  • Make sure all static content is properly cached.
  • Make sure all JavaScript files are combined and compressed into (ideally) one; same goes for CSS files.
  • Try to serve images of higher quality to size ratio; if possible combine smaller images into one and use the CSS sprites technique.
  • Use content delivery networks (CDN) to serve your static content.

Keep Control of HTTP Errors
Sometimes users mistype the URL and end up with a 404 error page. Additionally, sometimes your software may fail and the user will see a HTTP 500 error page. Users have become accustomed to seeing some funny and useful versions of these error pages.

Web developers often forget to ensure that there are no back-end calls that end up with an error. In many cases users will not be aware that those errors even happened, but it does not mean that those errors have no impact on the users. In fact, the calls that end up with an HTTP error not only contribute to the higher network time, but may also indicate application performance problems.

Figure 5 presents a part of report from the Speed of the Web service that shows time lost on handling HTTP 500 errors at TescaraHats.

Figure 5: There are too many HTTP errors reported by your e-commerce site

If your APM tool shows there are HTTP errors: in most cases you need to talk to your developers.

Make Sure You Care About Your Users
When you are certain about your e-commerce back-end performance, decreased unnecessary network load and made sure there are no HTTP errors behind the scenes, it's time to focus on your users who will soon swarm to visit your site. Read the next episode of our series to learn how to make your customers happy.

More Stories By Sebastian Kruk

Sebastian Kruk is a Technical Product Strategist, Center of Excellence, at Compuware APM Business Unit.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.