Skip to main content

Worker

The worker handles the execution of analytic workflows. There has to be at least 1 machine enabled as a worker to execute workflows. You can configure the same machine to be both the controller and a worker. The number of workers needed depends on the desired system performance.

Configure the worker on the Worker screens in System Settings. The worker screens are available for configuration if you've selected 1 of these options on the Environment > Setup Type screen:

  • Designer and Scheduler Only

  • Complete Alteryx Server

  • Custom > Enable Worker

Worker Configuration

The Worker Configuration screen includes configuration options, such as, where you want to store temporary files and whether you want the machine to run scheduled workflows.

Workspace

The Workspace is where the worker stores temporary or cache files, and unpackaged workflows for use when executing workflows. By default, it is the same as the controller folder. This path should point to a location that is safe to store large amounts of files.

Allow Server to Manage Workflows Running Simultaneously

Select the Allow Server to manage workflows running simultaneously checkbox if you want Server to manage the number of workflows allowed to run simultaneously. The number will be automatically calculated at service start-up based on the total CPU cores in the Server environment. Server allocates 2 physical cores per workflow. The following formula is used to calculate the number of simultaneous jobs:

number of simultaneous jobs = floor(physical processor count/2)

If the checkbox is not selected, you can set the number of workflows to run in Workflows allowed to run simultaneously. This is the maximum number of jobs that you want to allow to run simultaneously on this machine. You might want to adjust this to improve the responsiveness of scheduled jobs.

Depending on the available resources and other configuration parameters, if set too high, this might cause poor job throughput, stability issues, or general performance issues. For help with this setting, reach out to your Sales or Support representative or enable the Allow Server to Manage Workflows Running Simultaneously option to have Server manage this setting for you.

Cancel Jobs Running Longer Than (Seconds)

Use this setting to force cancel jobs after a certain amount of time. This frees up system resources from being taken up by long-running jobs. This setting applies to scheduled and manually ran jobs.

Note

You can set the timeout values in System Settings, which is useful in a multi-node environment, or through the Server UI.

  • If a timeout value has been configured on the Server UI, this is set across all workers. For more information, go to Server Settings.

  • If a timeout value has been set on the System Settings on a particular worker, this will override the UI values.

Quality of Service

In an environment where you have deployed multiple workers, Quality of Service determines which jobs each worker runs. When a worker handles a job request, it compares the priority level of the job to its Quality of Service value. Jobs that have a value greater than or equal to the worker's Quality of Service value are handled by that worker.

For example, if an available worker has a Quality of Service of 0, the worker handles any request. But, a worker with a Quality of Service of 3 only handles jobs that have a priority of 3 or higher. This allows you to reserve resources for higher-priority requests. For normal operation with 1 machine configured as a worker, set quality of service to 0.

  • 0: Low (normal workflow execution)

  • 1: Medium

  • 2: High

  • 3: Critical

  • 4: Chained application execution (all apps in the chain aside from the last)

  • 6: Workflow validation requests

Job Assignment

You can assign a specific worker to run a job. To do so, first add a job tag for the worker, then select that job tag when creating a schedule or running a workflow.

  • Run unassigned jobs: Select this option to use the worker to run untagged jobs.

  • Job tags: To assign the worker to run specific tagged jobs, add job tags. Comma separate multiple job tags. You can add the same job tag to multiple workers.

Run the Worker as a Different User

By default, the worker runs using the Local System Account. You can configure the machine to run the workflows as a specified user or account. This allows the worker to use specific credentials to access files or data locations. To set the machine to run as a different user, enter the Domain, Username, and Password.

Important

We recommend engaging your IT team to create a service account that has access to the necessary databases, shared network drives, and files.

For information on Run As User permissions, go to Configure Required Run As User Permissions.

Mapping Configuration

To enable the worker to act as a map worker, select the Allow machine to render tiles for mapping checkbox. Map workers render map tiles for map questions and the Map Input tool. To specify the number of processes to use for tile rendering, enter the Max number of render workers. The more processes allowed, the more simultaneous rendered tiles. Increasing this setting increases the system resources used.