0

Stackers - We're making the push to upgrade the systems for our web app to take advantage of the various TCP improvements becoming more readily available (e.g. http://googlecode.blogspot.com/2012/01/lets-make-tcp-faster.html )

We've got the kernel on one load balancer upgraded to use IW10 but I was hoping to get some insight from the community as to which servers are most highly recommended for upgrade?

I presumed we should be equally motivated to upgrade all of our servers, but there is not much reading I've found on this topic. It would be great to get others' insight because one random article I came across, but unfortunately cannot recall where, was talking about the most important parts of the system to upgrade would be the load balancers. I could see this point, in a way, but I would expect that since we're improving tcp performance in general, then just about every application's performance could benefit.

Could anyone please shed any advice on this?

We are running a fairly typical LAMP web application setup with about 15 or so servers.

Thnx in advance! Quite eager to see this through. Any recommendations on a process to benchmark things before and after is more than welcome too

jstats
  • 145
  • 9

1 Answers1

1

In general, every machine that acts as a TCP server, especially with short-lived connections (e.g. serving a web site), would benefit. And the higher the connection latency, the higher the benefit as IW10 would reduce the amount of round-trips initially. IW10 would also help faster recovery in case of packet losses in comparison to IW3.

The Load Balancer terminates all client connections. Usually the distance between clients and LB is much bigger than the distance between LB and workers. Some clients may also use a high-latency connection, e.g. ADSL, mobile, etc. Client-to-LB connections have much higher latency for one reason or another so having IW10 on the LB is where you should initially focus and achieve the biggest gains.

Newer kernels have other networking (incl. TCP), filesystem, etc optimizations as well which may increase overall server and content-delivery performance, and may improve server security.

Additionally, there are other optimizations that would speed up web content delivery (if that's your goal) that require little to no changes in code. But it all depends on a case-by-case basis.

Radko Dinev
  • 260
  • 1
  • 8