Forum Discussion
Gary_T_31565
Sep 26, 2007Nimbostratus
Thanks
Spent some time monitoring traffic. LTM does a pretty good job to be fair. This is an extract from my response to the devs today complaining about spikes. Funnily enough while they were composing a response the business at end of the message chain went down for a couple of hours and the LTM balanced the stuck messages perfectly across four servers.
For future readers the part about MSMQ will be useful as its not well documented.
"Note: Our load balancing is by connection (not message, request or size).
Incoming connections to Web services layer (b2b.xxxx.com) are balanced efficiently which results in equal load on Web Services layer queues.
Why we are seeing spikes on queue layer queues?
Firstly, load (connection and message count) over time is reasonably balanced and small 50 message spikes should not be of concern. Secondly, MSMQ by design opens a client/server tcp session and holds it open for 5 minutes by default (CleanupInterval registry key). The load balancer also by default holds open a tcp session for 5 minutes unless told otherwise via protocol. Reason for this is sensible, it is inefficient to start a tcp connection for each message. Thirdly, with all load balancing while traffic is low it will be uneven. E.g. 1st connection = 10 message in 5 minutes and 2nd connection = 30 messages in 5mins."