Skip to main content
Announcements
Defect acknowledgement with Nprinting Engine May 2022 SR2, please READ HERE
cancel
Showing results for 
Search instead for 
Did you mean: 
FrankC
Creator
Creator

Nprinting Processing

Hello

Is there any way to force the Nprint Engine to run 1 request at a time (on-demand) instead of allowing a subsequent to start until the first job has completed?

 

thanks for any advice.

 

Labels (2)
2 Solutions

Accepted Solutions
Frank_S
Support
Support

The NPrinting Scheduler service manages usage of available NP engine processes based on an internal algorithm.

There is no way to modify the algorithm. 
If your site's engine has insufficient resources, then suggest upgrading CPU and RAM or acquiring a second engine.

 

Also see:
Finetuning and preparing your NPrinting 19+ Deploy... - Qlik Community - 1716222

Please remember hit the 'Like' button and for helpful answers and resolutions, click on the 'Accept As Solution' button. Cheers!

View solution in original post

Ruggero_Piccoli
Support
Support

Hi,

Based on the description it seems that the installation is undersized compared with the workload or it could be too heavy for the connected Qlik Sense server. When you run multiple tasks at the same time the Scheduler distributes the resources on all of them, it is not waiting that the first started ended to start the second task etc. If an On-Demand request enter at the same time the Scheduler has to manage the resources it has.

I suggest you to monitor the hardware resources usage of Qlik NPrinting and Qlik Sense servers and evaluate to increase them if you cannot move the scheduled tasks to avoid the time when users request On-Demand reports. 

Best Regards,

Ruggero 



Best Regards,
Ruggero
---------------------------------------------
When applicable please mark the appropriate replies as CORRECT. This will help community members and Qlik Employees know which discussions have already been addressed and have a possible known solution. Please mark threads with a LIKE if the provided solution is helpful to the problem, but does not necessarily solve the indicated problem. You can mark multiple threads with LIKEs if you feel additional info is useful to others.

View solution in original post

8 Replies
Digvijay_Singh

I don't think its possible.

@Frank_S  what is your take on this?

Frank_S
Support
Support

The NPrinting Scheduler service manages usage of available NP engine processes based on an internal algorithm.

There is no way to modify the algorithm. 
If your site's engine has insufficient resources, then suggest upgrading CPU and RAM or acquiring a second engine.

 

Also see:
Finetuning and preparing your NPrinting 19+ Deploy... - Qlik Community - 1716222

Please remember hit the 'Like' button and for helpful answers and resolutions, click on the 'Accept As Solution' button. Cheers!
andregas
Partner - Creator II
Partner - Creator II

Hello @FrankC,

I suggested a similar add some months ago, if you think it could be usefull please upvote it: https://community.qlik.com/t5/Suggest-an-Idea/Define-a-maximum-number-of-cuncurrent-tasks-in-NPrinti...

Regards

David_Friend
Support
Support

@andregas like Frank was saying there is not a way to modify the algorithm...if you want OnDemand reports to be processed first the only way (that I am aware of) is to stand up a separate NP Environment just for OnDemand reports.

andregas
Partner - Creator II
Partner - Creator II

Hi @David_Friend,

I'm not asking to change the algorithm but to add a limit at the queue. I want choose the number of the reports could be elaborated at the same time, similar setting existing in QlikView or Qlik Sense (max concurrent reload).

Ruggero_Piccoli
Support
Support

Hi, 

No, you cannot set a max number of requests or other parameters. They are calculated by the Qlik NPrinting Scheduler based on available number of Engines and hardware resources using an internal optimization algorithm. About performances you can check https://help.qlik.com/en-US/nprinting/May2022/Content/NPrinting/DeployingQVNprinting/Performance.htm...

Note also that the time needed to create a report depends also on the structure of the template (for example many nested levels resulted in longer creation time) so, if you need to speed up the creation on some specific reports you can optimize the templates structure. On-Demand requests already have an higher priority.  

To optimize the performances I also suggest to avoid to use Section Access, that is supported but it is slower than native Qlik NPrinting filters. Check also the workload of the QlikView or Qlik Sense server you are connecting Qlik NPrinting. 

Best Regards,

Ruggero



Best Regards,
Ruggero
---------------------------------------------
When applicable please mark the appropriate replies as CORRECT. This will help community members and Qlik Employees know which discussions have already been addressed and have a possible known solution. Please mark threads with a LIKE if the provided solution is helpful to the problem, but does not necessarily solve the indicated problem. You can mark multiple threads with LIKEs if you feel additional info is useful to others.
andregas
Partner - Creator II
Partner - Creator II

Hi @Ruggero_Piccoli ,

If I could be honest this algotithm is working very badly...

Generally I managed the NP tasks using an external scheduler and API because if NPrinting is working with more than 4 tasks at the same time, generally it completes them after double of time that it request to elaborate them singularly (all tasks request at least the double of time, so the total time is x2).

With on-demand I cannot schedule or manage when and how many reports start at the same time. In one of the my case study the client has 400 users could generate reports on-demand and, based on filters, the report could be request 1-30 minutes to generate singularly, but usually, because the users start them randomly, after 4 hours NPrinting has still elaborated them. It's frustrating, the users (or the system supervisor or the system timeout) abort the requests and send me a complaint.

Setting a limit of concurrent elaboration could be a simple work-around to optimize the times.

Ruggero_Piccoli
Support
Support

Hi,

Based on the description it seems that the installation is undersized compared with the workload or it could be too heavy for the connected Qlik Sense server. When you run multiple tasks at the same time the Scheduler distributes the resources on all of them, it is not waiting that the first started ended to start the second task etc. If an On-Demand request enter at the same time the Scheduler has to manage the resources it has.

I suggest you to monitor the hardware resources usage of Qlik NPrinting and Qlik Sense servers and evaluate to increase them if you cannot move the scheduled tasks to avoid the time when users request On-Demand reports. 

Best Regards,

Ruggero 



Best Regards,
Ruggero
---------------------------------------------
When applicable please mark the appropriate replies as CORRECT. This will help community members and Qlik Employees know which discussions have already been addressed and have a possible known solution. Please mark threads with a LIKE if the provided solution is helpful to the problem, but does not necessarily solve the indicated problem. You can mark multiple threads with LIKEs if you feel additional info is useful to others.