Tableau Server Backgrounder Process

The Backgrounder process runs server jobs, including extract refreshes, subscriptions, flow runs, and data driven alerts. Jobs are initiated both from scheduled tasks and when started manually using ‘Run Now’, REST API, or tabcmd commands.

Process

Backgrounder

Status Status of the Backgrounder process is visible on the Status Page. For more information, see View Server Process Status
Logging Logs generated by the Backgrounder process are located in /var/opt/tableau/tableau_server/data/tabsvc/logs/backgrounder. For more information, see Tableau Server Logs and Log File Locations

What happens if a Backgrounder process goes down? Jobs on the failed Backgrounder process are retried once the Backgrounder process recovers from failure. Most background jobs are scheduled to run periodically, and the same background task will be picked up and performed normally at the next scheduled time by a functioning Backgrounder process.

Failed Backgrounder processes automatically restart as long as the computer itself is otherwise healthy, and the failed jobs will be retried.

To make the Backgrounder process highly available, you should configure one or more instances to run on multiple nodes in the cluster.

Managing Backgrounder Resources

Backgrounders as mentioned earlier in this topic, run server tasks, and can be resource intensive. There are several ways in which you can manage the resources that Backgrounder needs to run the server tasks:

  • Backgrounder is single-threaded. It can only launch a single job at a time. Adding more Backgrounder instances to a node can increase the number of jobs that can be run in parallel on that node, but keep in mind that each job launched can itself use multiple threads. You can add Backgrounder instances up to one half the number of cores. When deciding where and how many Backgrounders to run, consider that each Backgrounder process launched for a job can use multiple threads, so adding Backgrounder instances may limit the effectiveness of each process. Also keep in mind how other server processes will affect each machine’s available capacity.

  • If you are running Tableau Server on a multi-node cluster, you can dedicate one or more nodes for running Backgrounder. For more information, see Recommended Baseline Configurations.

  • You can also separate the type of jobs or workload that the Backgrounder on a node does. For example, you can have one node dedicated to running extract refreshes only. For more information, see Workload Management through Node Roles.

  • Currently users can run extract refreshes, flow run, and subscriptions using the web interface, REST API, and tabcmd commands, and can run them at any time of the day. This can take up server resources during times that your server is busy doing other activities. Starting in Tableau Server 2020.1, a new Run Now settings allows the server administrator to choose whether or not to allow users to run jobs manually. By disabling the Run Now option, you have better control over how backgrounders are utilized as well as being able to better predict the load. This does not apply or affect jobs that are generated for scheduled tasks. For more information on configuring this setting, see Server Settings (General and Customization).

Thanks for your feedback!Your feedback has been successfully submitted. Thank you!