This content has been marked as final. Show 1 reply
This is a common misunderstanding of how Tuxedo performs load balancing. Instead of using a simple round robin algorithm which would spread requests across all available servers, Tuxedo looks for the first server that is not busy. If all servers are busy, then Tuxedo places the request on the server's queue that has the least amount of work queued to it. The only way you will see all servers getting requests in your scenario is if you have more than 10 concurrent requests outstanding. Also Tuxedo always starts its scan for a free server with the same server and in the same order, thus the first server will take most of the requests on a lightly loaded system, the next taking fewer requests, and so on. Part of the reason for doing this is that you get better memory coherence, i.e., as long as the first server is available, it's likely to have its pages in memory and probably in cache. Round robin scheduling would force all servers to have their pages in memory and flush any memory caches pretty quickly.
Hope that makes sense!
Oracle Tuxedo Chief Architect