Processing Agents

Top  Previous  Next  

When a user opens a dashboard, changes filter options or selects a drill down in the web or mobile apps, that request must be processed by the web server. If the dashboards contain a lot of data and the number of requests are large, this can overload the web server such that the response times become slow.

ProcessingAgents

To overcome this, DataPA Enterprise allows the implementation of Processing Agents. The implementation of Processing Agents includes a broker service (the DataPA Enterprise Processing Broker Service) that manages agent processes and agent processes that perform the tasks described above on behalf of the web server.

 

It is important to understand that there is a performance cost in terms of managing these extra processes and the communication between them. As such, Processing Agents should only be used when the size of dashboards and number of users is causing the response time for the web server to be slow.

 

If Processing Agents are turned on, they work as follows. When a user requests a dashboard using the web application or mobile app, the broker starts an agent that loads the dashboard on behalf of that user. That agent will remain running with the dashboard loaded until the user navigates away from the dashboard or the idle timeout is reached.

 

If a dashboard is very large, and so takes a significant amount of time to be loaded, it is possible to instruct the server to pre-load a number of agents with that dashboard. These agents will remain active with the dashboard loaded whilst the server is running.

To enable Processing Agents, follow these steps;

 

1.Log in to DataPA Enterprise on your server with a user that is a member of the Administrators group.
2.Select the Settings icon on the left of the screen, and select Processing Agents from the tab.
3.Ensure the Use Processing Agents option is selected.
 
clip815

 

The Processing Agents screen also allows you to set the following configuration settings for the Processing Agents;

 

Property

Description

Processing Broker Port

This is the port that the DataPA Enterprise Processing Broker Service listens to. It is used only by the Web Server to make requests between the two processes on the local machine.

Processing Agent Starting Port

When Processing Agent processes are started, they are assigned, and listen to, a particular port in order to receive requests from the Web Server. The Processing Agent Starting Port and Processing Agent Ending Port define the bounds of the port range the DataPA Enterprise Processing Broker Service uses to search for a free port when starting an agent.

Processing Agent Ending Port

When Processing Agent processes are started, they are assigned, and listen to, a particular port in order to receive requests from the Web Server. The Processing Agent Starting Port and Processing Agent Ending Port define the bounds of the port range the DataPA Enterprise Processing Broker Service uses to search for a free port when starting an agent.

Processing Broker Agent Inactivity Timeout

If an agent receives no requests for a loaded dashboard within this period, and is not set to pre-load the dashboard, it will unload the dashboard. If that agent subsequently has no dashboards loaded, it will terminate.

Max Dashboards Allowed Per Processing Agent

By default, an agent will only load a single dashboard for a single user. If this setting is raised above the default level of 1, a single agent can load multiple dashboards (up to the number defined), thus sharing a single agent between one or many users.

 

To configure a dashboard to be pre-loaded into one or more agents, follow these steps;

1.Open your dashboard in the Dashboard Designer client application
2.From the ribbon, select File-->Properties
3.Select the Tuning tab
4.Select the dashboard in the treeview
5.Select the Tuning Options tab
6.Select the pre-load checkbox and enter the number of instances of the dashboard to pre-load
clip816

Copyright © 2003-2017 DataPA Limited, all rights reserved. DataPA OpenAnalytics 6.0