Predictive vs Least Connection Load Balancing Techniques

f5-big-ipload balancingnlbscalabilitywindows-server-2003

I have a windows based desktop application that communicates via TCP to the application servers. (windows 2003). No sticky sessions between client calls. We have exactly 2 servers to load balance and we are thinking to use a F5 hardware NLB.

The application is a heavy load types, doing not much bussiness logic in the services but retrieving quite a big amount of data at most of the times. May be on an average 5000 to 10000 records at all times. Used mainly for storing and retirieving data and no special processing of data or calculations running on the server side.

I am favouring 'predictive' considering my services take a while at times to return data and hence tracking the feedback would yield some better routing as in predictive.

I am not sure if the given data is sufficient enough to suggest some ideas but considering these, what would be some suggestions\things to consider\best between Predictive and Least Connections ?


Best Answer

As I remember it, predictive in the F5 context is a continual monitor of the service response-times. It works best when the web-requests being passed through the BiP are expected to have a similar time-to-response. If a back-end server is loaded, it's TTR will increase, and the BiP will back off how many connections it sends its way until the TTR normalizes.

If your service's requests have a highly variable TTR, the value provided by predictive will be less significant. Keep in mind that the BiP considers the response to be the leading edge of the response; so long as the first reply-packet comes in reliably, it doesn't matter if the stream is 15 packets or 50,000. If your service waits until it has all the data before streaming, you'll get less value from predictive.

Related Topic