Is your Load Balancer increasing your Bandwidth usage?

Is your load balanced website using more bandwidth under load than a single server would? In a previous article (“Status code 200 didn’t match expected: 304”), we discussed how a website may return full data content back to a client, even when the browser had the resource cached. If you believed that adding an extra server and a load balancer will increase your performance, this can be an unsettling surprise. The problem arises when two web servers are delivering different Entity Tags for the same static resource:
Headers of same file on different servers

In this example, we have two requests made to the same public URL, but these requests were routed to different servers behind the load balancer. Notice that each server creates a slightly different ETag for the same file. As noted earlier, the client uses ETags in order to detect if a file has changed. If the load balancer redirects the client to a different server since the last time the user has visited the site, then their cache is effectively invalidated.

There are some ways to remedy this behavior. Yahoo has recommendations to remove ETags entirely if they are not being utilized by the site: http://developer.yahoo.com/performance/rules.html#etags

For IIS v6 customers, it may be easier to synchronize the ETAG_CHANGENUMBER between each server, as discussed at http://blogs.iis.net/chrisad/archive/2006/12/18/iis7-deployments-calls-for-etag-usage-review-if-using.aspx

Happy Testing!

-Frank, Engineer at Web Performance

Add Your Comment

You must be logged in to post a comment.

Resources

Copyright © 2014 Web Performance, Inc.

A Durham web design company

×

Sales Contact

Thanks for your interest. Please complete this form and we will get back to you as soon as possible with a quote. Please note: Technical support questions should be posted to our online support system.

About You
Product Needs