Skip to main content
Topic: Load Balancing (Read 1174 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Load Balancing

I was looking at that code and something seems wrong, or I'm missing something.

We currently get the system load which is generally a float like 0.07 and then compare it against the values set in the ACP like 2.5

The ACP is done like that for legibility, but what I don't see is how those or the CPU values are normalized.  Meaning CPU load *10 or APC/100 I would think.   Am I missing something?
Be safe, Be kind, Happy Programing

Re: Load Balancing

Reply #1
Wouldn't it be when the load reaches 2.5 it triggers? That would make more sense than something normalized.

Re: Load Balancing

Reply #2
Context: https://github.com/elkarte/Elkarte/issues/1866

So, in summary: have 1.0 on a single core CPU has a meaning, while having 1.0 on a 4 cores has a different meaning.
In the first case it means that 1 of the 1 cores is "doing its job" [1], while in the second it means there are still lots of cores to "fill".

At the moment, since we divide by cores, 1 should represent the "ideal" situation, where all the cores are used and there are no jobs pending. But of course is the borderline, any more jobs and some will have to wait.
So, in the current situation, 40.0 (entirely disable the forum) means 40 times the jobs the server can process are waiting to be processed.

The more I look at the values we have as defaults, the more I think they make sense in most of the cases.
Yeah, 30 and 40 are **very** high values, though the operations are at the same time rather extreme (disable bbc and block the forum completely).

Dunno.
See the links in the github issue for more details.
Bugs creator.
Features destroyer.
Template killer.

Re: Load Balancing

Reply #3
OK, got it, the numbers just seemed really high to me, thanks for the explain.
Be safe, Be kind, Happy Programing

Re: Load Balancing

Reply #4
Yeah, it looks pretty high... dunno.
Maybe 20 and 30?
Bugs creator.
Features destroyer.
Template killer.