0

Supposing I have three backend Linux servers, A, B, C, where C is about twice as powerful (mainly in CPU terms) as the others, is it possible to set up a Pound frontend configuration (also dedicated Linux machine(s)) that aims to distribute HTTP traffic to these backends as follows:

  • A: 25%
  • B: 25%
  • C: 50%

I can see the Priority config option in man pound(8), but it doesn't sound very scientific to me:

Priority val The priority of this back-end (between 1 and 9, 5 is default). Higher priority back-ends will be used more often than lower priority ones, so you should define higher priorities for more capable servers.

Is it merely a case of trying different priorities until it seems to be OK, or is there a more accurate way to express the relative server strength? As I say, will be used more often doesn't seem particularly scientific to me.

fooquency
  • 143
  • 4
  • Your question is very vague. What sort of load-balancing are you using... what sort of services are you load balancing... what sort of OS... define "powerful" ... etc... – TheCompWiz Aug 31 '16 at 18:11
  • @TheCompWiz: Sorry - entirely right. It's been a long day. Editing now. – fooquency Aug 31 '16 at 18:13

1 Answers1

0

I confess... my knowledge of "pound" is almost non-existent. (never used it in production) I do however have quite a bit of experience with loadbalancers and web server farms.

I've found in most cases when it comes to web-server performance... CPU is the least likely bottleneck... and so it's not really a good measure of more or less "powerful". Usually the bottlenecks come down to kernel parameters, the network stack and/or IO. (in that order) That being said, most load-balancers typically do not provide much more than a weight to servers. They don't actually look at the actual active workload of the servers they're trying to balance. They simply look at the process queue and divide the load based on whatever weights assigned... and press on. i.e. 5 difficult jobs + 5 easy jobs = 10 jobs... get divided by 2 servers... could end up with one server overloaded... and one server mostly idle.

When looking at playing with "weights" ... yes... you should definitely "play" with the numbers until you reach a good balance for a baseline. Be careful, and do not make big changes. Small changes can have very big results. This is where sys admins and dev ops guys make their money. Knowing what to tweak and how is far is far more effective than following a random guide online.

TheCompWiz
  • 7,409
  • 17
  • 23