Forum Discussion
Peter_Baughn_84
Nimbostratus
Sep 08, 2008custom load balancing
We have a set of servers that each have a set number "jobs" they can handle. These jobs are scheduled with a web request. I would like to be able to load balance these based on the number of active jo...
Paul_Szabo_9016
Sep 08, 2008Historic F5 Account
Couple of other ideas:
(1) Dynamic ratio. If you can query the number of jobs on a server via e.g. snmp, you can set up the BIG-IP to change the ratio of each node dynamically. You'll want to query this fairly quickly (e.g. once a second) to keep up with changes in a dynamic load.
(2) Use a 'passive' monitor via an iRule to monitor for the page that indicates no-more-jobs (as previously mentioned in the thread), then do a reselect when that comes back from the server. This is much more lively than a custom HTTP monitor. In fact any mechanism that doesn't provide immediate feedback to the LB logic is not that useful as it will oscillate badly.
(3) Create your own "least jobs" LB in and iRule (as mentioned previously in the thread). as of 9.4.5 you have access to the list of active (up) servers and can write all sorts of LB stuff (see similar rules for e.g. CARP). We don't yet provide a good storage mechanism for storing your data on a per-server basis, so this won't exactly be easy, but it is possible.
If this is HTTP then I advise use OneConnect as it frees up server jobs pool(e.g. Apache threads) the quickest.
The other way I've seen this done (for Apache) is with connection limits in combination with OneConnect. This seems to manage the apache thread pool fairly nicely.
Paul
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
DevCentral Quicklinks
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
Discover DevCentral Connects
