Overview
JetBackup is designed to allow multiple backup jobs to run at the same time. In fresh JetBackup installations, however, you may observe that JetBackup does not run simultaneous backup jobs because by default, JetBackup assigns all accounts the same backup priority. When priorities are equal, the backup job processes account for backups sequentially.
Once you configure priorities (Queue Priority Groups) and concurrent backup forks (Settings → Performance → Concurrent Backup / Clone Tasks; max 10) correctly, JetBackup can process accounts from different jobs at the same time, using priority to decide which account gets the next available slot.
Forks = Lanes on a Road
Think of each Concurrent Backup Fork as a lane on a road:
| Forks | Lanes |
| 1 Fork | 1 lane |
| 2 Forks | 2 lanes |
| 4 Forks | 4 lanes |
Each account backup uses one lane while it is running. The number of forks you set is the maximum number of account backups that can run at once, across all backup jobs (JetBackup 5 allows up to 10 concurrent backup/clone tasks).
Example Scenario
Backup Job 1 has:
- Account A → High priority
- Account B → Medium priority
- Account C → Low priority
Backup Job 2 has:
- Account 1 → High priority
- Account 2 → Medium priority
- Account 3 → Low priority
Concurrent Backup Forks = 2 (2 available lanes).
Step 1: Backup Job 1 Starts
With 2 available lanes:
- Account A (High) starts using Lane 1
- Account B (Medium) starts using Lane 2
- Account C waits — there are no free lanes.
Step 2: Backup Job 2 Starts
Backup Job 2 is ready to run, but both lanes are occupied, so it must wait.
When one lane becomes free (e.g. Account B finishes), JetBackup looks at all waiting accounts across all jobs and selects the highest priority account available.
In this case, that would be Account 1 (High priority from Job 2). Account 1 then takes the newly available lane.
So even though Job 1 started first, Job 2 begins processing as soon as a lane opens, based on priority. Both jobs are active at the same time, sharing the lanes.
Key Takeaways
| Point | Explanation |
| Multiple jobs can run simultaneously | Yes. Different backup jobs can be active at the same time. |
| Forks = concurrency | Forks determine how many accounts can be processed at once (total across all jobs). |
| Priority = order | Priority determines which account gets the next available fork when one is free. |
| Scheduler is global | The scheduler is global, not per job. Accounts from different jobs compete based on priority. |
How to Configure
- Set concurrent backup forks
Go to Settings → Performance. Under Concurrent Backup / Clone Tasks, set the number of account backups that can run at once (1–10). This is your number of "lanes." - Create Queue Priority Groups
In the same Performance section, open Queue → Manage Queue Priority Groups. Click Create New Queue Priority, give each group a name (e.g. High, Normal, Low) and a priority value. Lower value = higher priority (e.g. High = 10, Normal = 50, Low = 99). - Assign priority to accounts
Go to Accounts, select an account, then Manage Account. Use Account Queue Priority Group Override to assign a priority group, or assign an Account Tag that is linked to a queue priority group. - Optional: Set a default
In Manage Queue Priority Groups, you can Set as Default for one group so accounts without an override use that priority.
Automating priority assignment: For many accounts, setting priority per account in the UI may be impractical. You can automate assignment using the JetBackup 5 API—for example, by inode usage so larger accounts get higher priority and back up during off-peak hours. The JetBackup blog walks through a sample script that assigns High / Normal / Low priority based on inode usage; the same approach can be adapted to other criteria (e.g. disk usage).
Why This Is Not the Default
By default, all accounts are assigned the same priority. If every account has equal priority:
- Enabling multiple concurrent forks does not provide intelligent scheduling.
- It may increase server load without clear benefit (order is effectively arbitrary).
When priorities are configured intentionally, concurrent forks become useful because they allow:
- Critical accounts to start sooner
- High-value clients to finish faster
- Lower-priority accounts to wait when necessary
Simple Summary
Think of it like traffic management:
- Forks = how many cars can drive at once (number of lanes).
- Priority = which car gets to enter the road next when a lane opens.
Even if Backup Job 1 starts first, Backup Job 2 can still begin processing as soon as a lane opens — based on priority. Both jobs are active at the same time, sharing the available lanes intelligently.
For more on configuring priorities and forks, see JetBackup Documentation (Settings, Queue Priority Groups, and FAQ) or contact JetBackup Support.

