Thursday, August 23, 2007

Big-IP review

Do you need to put your web server on steroids? Do you find it slow and do not know what to do? If you have the money, I have the solution.

A speeding turtle

Here is one solution for you. The Big-IP is a all-in-one box where you can do lots to tweak your web server performance and reliability. Features includes:

  • Connection pooling from the Big-IP to your backend web server. This offloads connection setup time on your web server.
  • SSL offloading when you encrypt your web pages. With this feature you do not need to spend web server CPU cycles to manage SSL sessions.
  • RAM cache is also possible which offloads static content that is downloaded all the time. You can also cache dynamic content if you want.
  • Compression of content. Most of the content on a web server is compressible. With this feature enabled you can save bandwidth, speed up clients on slow lines and load web pages faster. On a site with much content you can expect 60-70% reduction in bandwidth requirements using this feature.
  • Load balancing with failover. If your solution needs more than one web server you can load balance traffic and as soon as a node fails it will be removed from the pool.
  • Web accelerator combines several technologies to try speed up.
  • HTTP header manipulation. You can manipulate every http header if you want.

What you will use depends on your requirements and wallet. Some of the features above are expensive, but they all work great. You will have to pay about US$20,000 for the entry level platform.

The Big-IP platform

After one week of work on this platform I have to say that I am impressed. It is relatively easy to use and configure. All the basic configuration settings are configured from a web page. Just spend some minutes and read their quick startup guide to get familiar with their naming conventions.

With less than one hour of configuration you should see improvements on your solution.

Big-IP customizations

One think I really like is that if I need something that F5 did not think about I can tweak it myself. Here is the code to cache HTTP 302 replies and redirect my secure site to HTTPS.

when HTTP_RESPONSE {
 if { [HTTP::status] == "302" } {
 CACHE::enable
 }
}
when HTTP_REQUEST {
 if { [HTTP::uri] starts_with "/secure"} {
 HTTP::redirect https://mysite/secure
 }
}

This is called iRules. The language is based on TCL.

RAM cache

Squid is probably the most known cache server in the world. But it is only a cache. Big-IP is lots and lots of more, but probably not the best cache-only solution. It only caches to memory, so if you serve big content like images, videos and so forth and require a big cache this is not the best solution.

But for all other uses it works great in conjunction with compression and load balancing.

Web Accelerator

This module rewrites the web page so it loads faster and tries not to transfer redundant data twice to the client. This is at least what F5 says.

Out of the box the web accelerator have profiles for Microsoft Exchange Server and Sharepoint. (And some others, but I don't remember now.)

On low bandwidth and high latency inline objects (like images, CSS, javascript) are rewritten to be downloaded from other servers. This to overcome the limitation in Internet Explorer to only open open two connections to one server at a time.

Combined with compression this should make some chatty Microsoft web applications more speedy over the Internet.

Conclusion

I love this product. It have lots of features and you can tweak and tune it to fit to most web applications. I spent much time evaluating the RAM cache but see lots of potential in all the other features.

The Big-IP documentation is not impressive. Nor the Wiki on DevCentral. You need to spend some time to figure out how to use it if you need custom features.

PS! The load balancer feature is not only for web traffic. All kind of traffic can be load balanced.

Good luck! If you have any questions do not hesitate to ask me!

Labels: ,

1 Comments:

At 01:30, Blogger Joe said...

Thanks for the great review!

I noticed that you omitted iControl (our remote management interface). We support all the major SOAP toolkits out there and our API allows you to automate anything you would do with the management GUI. If you have any questions about this, let me know.

Regarding your comments about DevCentral: If you could elaborate on the ways we can improve the wiki on DevCentral, we'd love to hear it. If there is something you see as missing, incomplete, or confusing, we'd be glad to try to either add it or fix what's not working for you.

Also, know that the wiki is just that: a wiki. If there is something you think should be changed, go ahead and change it yourself if you have the time.

Feel free to contact me directly or post comments on DevCentral.

Joe -at- F5 -dot- com
http://devcentral.f5.com/weblogs/joe

Thanks again for the great review.

-Joe

 

Post a Comment

Links to this post:

Create a Link

<< Home