Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Jul 2, 2024 4:54:32 AM
Jul 23, 2015 3:34:17 AM
The max concurrent reloads can be configured in the Qlik Sense Management Console.
<ServerName>_System_Scheduler.txt
Domain\qvservice Engine connection released. 5 of 4 used
Domain\qvservice Engine connection 6 of 4 established
Domain\qvservice Request for engine-connection dequeued. Total in queue: 25
Use the "Max concurrent reloads" to limit the maximal concurrent tasks can be run at same time on current node. By default, it's set to 4, which means only 4 tasks can be run at same time on this node.
When the 5th task comes in:
On a multi-node deployment, tasks will be balanced from the manager node to any node(s) designated as workers.
It's highly advised to check if the central node configured is set to Manager and Worker or Manager. When set to Manager, it will send all reload jobs to the reload/scheduler nodes, as it should. However if a central node is set to Manager and Worker, this means the Central node will also be involved in performing reloads. This is not recommended.
The work flow looks as follows:
The improvement to track the Max concurrent reloads can, if desired, be disabled. This reverts Sense to an older load balancing method that relies only on CPU usage.
To disable the setting:
In our example, we allow one concurrent reload, but we assume that two reloads are executed at the same time.
thank you very much for this article
does this rule still apply?
"For chained tasks, there is no load balancing that happens for tasks. All chained tasks are sent to the same Scheduler Node as the original task. "
Indeed, i've made a test on 2 different multi node architectures (August 2021 SR3 and May 2022 Patch 4), and in both, in chained tasks, the two tasks were executed by 2 differents scheduler nodes.
One last question, is it possible to "determine" which node is concerned in an execution of an external task, not linked to an app ?
Have a good day.
Johann
Hello @jchoucq I've verified this with our Subject Matter experts and can confirm that the information in the article was outdated.
Thank you for raising this!
The outdated information was removed and the article cleaned up a little.
All the best,
Sonja
@Sonja_Bauernfeind Just to confirm, the latest Qlik Sense Enterprise on Windows version (say May 2023) does not have this limitation with multiple scheduler nodes?
"For chained tasks, there is no load balancing that happens for tasks. All chained tasks are sent to the same Scheduler Node as the original task. "
Thanks
we have a client with dedicated reload node. 28 vCPU and 26 concurent reload task set.
When we try to start reload task with 25 similar app we see that at
fact only 10 tasks works, all another wait in "running" status w/o any action. what we can to do in this situation?
Hello @korsikov
The max concurrent cannot be matched 100% to your cores. Other factors will come into play, such as how some reloads consume more cores and/or will consume resources which signal the Qlik Sense server to begin queueing.
In addition, note:
It's suggested not to run more than 10 concurrent reloads at once, unless the schedular node has an extreme amount of resources dedicated to it.
You may have reached the point where a singular reload node will not be sufficient to carry out the tasks you need, or you will need to review overall performance and reload behaviour.
To investigate why your reloads are queued, we recommend monitoring resources as well as reviewing the log files to locate the reason why a job was queued. If you need more direct assistance with this, please post about your requirement and challenge in the appropriate forum (Deployment & Management), or, if you require direct involvement with Qlik, our consulting services can be contacted to assist you with sizing questions.
All the best,
Sonja
Hi Sonja,
Thank you for fast responce.
there is come kind of hardcoded limitation or it can customize it? QlikView has Heap size limit, but in Qlik Sense it's working in one Engine.exe process.
Hello @Sonja_Bauernfeind i have a question for this,
According to
When working on multinode-deployment and one of server becomes unresponsive for any reason (high cpu usage or memory leak etc.) all tasks that need to start are hangs at trigger status. Could this be caused by the setting above? Because of the server(any of workernode) becomes unresponsive, central node might not get answer of current running task number from that node, and might waiting response from it to distribute task for available node. Untill central node gets answer from unresponsive node, it keeps waiting tasks in trigger status. How can we overcome this? Its making a interruption on tasks in our site, untill you restart the slave tasknode that becomes unresponsive.
Good morning @Sonja_Bauernfeind in which cases do you recommend to disable the Max concurrent reloads config for schedulers and by default use the older load balancing method that relies only on CPU usage ?
Example does it make sense to use the older balancing rule when the task performance (due to different amounts of data loaded) are quite different from on another i.e. one task can take 5 minutes and another task 40 min ?
When you mention cores, are these virtual or physical cores?