How Server and Network Speed Affect Website Performance

Greg Bear
08/14/2021

A slow website affects customer happiness, increases abandonment, lowers brand experience, impacts SEO, frustrates site admins, and just kinda makes everything suck. We’ve been "under the hood" performance-tuning websites for clients for years. In our Improving Website Performance Series, we'll help you establish a baseline for your site, review the key levers we look to for performance improvements, and point you in the right direction as you get started.

The Precarious Round Trip

Unless you’re an internet network engineer, you may not be aware that the World Wide Web is truly a web. When you type in a URL, your browser isn’t talking directly to a company’s server.  It’s not like cans between a screen — there are cans on each end, but the string is a global interconnected web.

graphic explaining world wide web, it is not like two cans but more like connect strings

For every single request a website visitor’s browser makes (100s of elements for one pageview), a web-like journey begins and is relayed over many networks. The request starts from the URL the visitor enters in their browser and hops across many servers, eventually getting to your server, which then responds back across many servers and ends up at the visitor’s browser. That journey is measured in milliseconds to go round trip and is happening at the speed of electrons. The location of your actual web server doesn’t matter too much. 
 
When we talk about website performance, one of the areas to consider is the actual speed in which the server hosting your website code can get and return a response. This is typically called network latency or just “wait time” and it’s the topic for today.

Measuring Network Latency

You have probably heard of your IP Address—it’s like the mailing address for your computer or device on the internet. This, along with a transfer protocol (TCP/IP), establishes the rules which allow packets of information to move along a vast interconnected network and get from a source server to a destination browser. Like an electronic postal system.

"TCP/IP How it works" graphic courtesy of The Conversation article, "How the Internet was born."
"TCP/IP How it works" graphic courtesy of The Conversation article, "How the Internet was born."

To see it in action, you can run a traceroute command on a Mac or tracert on a PC and you’ll get a list of all the routers and the time (hopefully in milliseconds) that it took to get a response. When you add up the time for each hop, you can get a sense of the latency between your machine and your website. We use fancy monitoring and management tools to get this information more graphically.
 
Going back to Google Chrome Developer Tools (specifically the Network tab), the latency from the first requested document is important. It’s essentially the time it takes for you to hit enter on your browser, your web server processes the instructions for the first Document and sends it back to your computer/browser. This first Document contains all the other links to images, assets, styles, so on. It also usually contains all the structural HTML for the page and text. 

screenshot showing how network latency works on the bear group website

The network speed once a request leaves your personal/business network is not something that you’ll have tremendous control over. However, trust that it’s incredibly resilient, optimized, and fast. Things you hear in the news like denial of service attacks, backbones being cut, DNS services being targeted—all the stuff happening in the middle of a network request — aren’t really in your control.
 
The two big items you DO have control over that impact latency:

  1. We see latency issues when a client has a slow office connection or insignificant bandwidth on their network. Especially with tools like Magento’s admin panel, which often sends down a lot of page elements (such as a product catalog).
  2. The other area we see latency is in database processing time, or memory allocation to your database. Ecommerce and CMS platforms dynamically build pages from requests to the database. A database with insufficient memory allocation can slow down its ability to respond, affecting overall performance.

If your first-page load looks really slow in Developer Tools (like more than 1-2 seconds), you can often get a quick win by having your development team take a look at the hardware configuration and memory allocation. Make sure the recommended settings for your application are being met (these are usually widely published by an app developer). Seeing immediate performance gains can sometimes be as simple as resizing your web server and allocating memory.

If it seems like a site is slow for just you—and other people say the site loads fine—it probably IS just you. Make sure the network you use has adequate throughput. Even on high-end corporate WiFi networks, there are often many competing requests for bandwidth, or it could be the distance you are from an access point. Run a speed test to find out.

Seeing immediate performance gains can sometimes be as simple as resizing your web server and allocating memory.

Network operations is a big topic, but the professionals in this area know more about (and care more about) performance than any other group you’ll encounter. They can provide a deeper analysis, and run all sorts of diagnostic checks to performance-tune your web server and office networks. The stuff in between the cans is fascinating, but it’s rarely what you’d pin site performance issues on. 
 
In the final installment on web performance, we’re going to talk in more detail about all the available caching and aggregation. This can be a great way to reduce the number of round-trip requests needed, and that will improve performance.


Read more in the series