A backup runs in many short steps. In the tile Performance you set how long a step works and how long the plugin waits afterwards. This is how you adapt both to a server that aborts steps or needs a pause between steps.
You do not have to set anything here
These settings are optional. With the defaults, a step works for at most 20 seconds, with no pause afterwards. Change the values only if your server aborts steps or your hosting provider limits the load.
Why the plugin works in steps
Web servers end PHP after about 30 seconds. So a backup, a restore and every other job work in steps: a step works, saves its state and ends. The next step continues from there. If the server aborts a step, nothing is lost: the next one starts from the last saved state.
Step 1: Open the Performance tile
Open the Settings page, switch to the Extended view and click the title row of the tile Performance.
- Maximum time per step is the time a step works at most before it ends.
- Pause between steps is the waiting time after every step before the next one begins.
- Save saves both values.
- Shared hosting preset fills the fields with 10 seconds and 2 seconds.
- Default fills the fields with the defaults: 20 seconds and 0 seconds.
Step 2: Choose the values
| Field | Default | Allowed | When you change it |
|---|---|---|---|
| Maximum time per step | 20 seconds | 5 to 20 seconds | Reduce the value if your hosting provider ends PHP early, for example on strict shared hosting. More than 20 seconds is never possible. |
| Pause between steps | 0 seconds | 0 to 60 seconds | Increase the value if the server needs a breather between steps. |
For shared hosting there is a preset: click Shared hosting preset. Default leads back to the defaults. Both buttons only fill the fields.
If your server aborts steps, the plugin also lowers the effective maximum time on its own. Whether that has happened is shown by the probe run in step 4: the learned maximum is then below 20 seconds.
Step 3: Save
Click Save. Only then do the values apply.
- The message reads Saved. After 8 seconds it closes on its own.
- Dismiss removes the message immediately.
If the server rejects a value, it stays in the field. Below it is the reason, for example Allowed: … to ….
A job that is currently running continues with the values that applied when it started. The new values apply from the next job on.
Step 4: Measure with the probe run
The probe run is a job without data. It measures how long a step survives on your server, which task sources arrive, how many megabytes per second the work folder writes and how much memory is free. It does not make a backup, and no target is touched.
In the Extended view, click the title row of the tile System and support. At the bottom is the block Diagnosis.
- Probe run shows the last run with time and figures.
- Run starts the diagnosis of the line.
- File list
- Database export
- Files dry run has never run here; the dot is grey.
In the line Probe run, click Run. The page reports … started. and shows the progress.
- The spinning ring shows which diagnosis is running. The buttons are locked for that time.
- The progress display names the phase, the state and the remaining time.
- Abort backup aborts the probe run. The link has this name here too.
After the end, the figures appear in the line: … units in … steps, longest step … s, learned maximum … s, writes … MB/s, peak memory …
| Figure | Meaning |
|---|---|
| units and steps | The probe run from the tile works through 200 units of 50 milliseconds each, spread over as many steps as it needs for that. |
| longest step | This is how long the longest step worked. |
| learned maximum | The value the plugin has learned on this server. If it is below your setting, it applies. |
What the plugin adjusts on its own
- If the server aborts a step, the plugin lowers the learned maximum to 60 % of the time this step survived, never below 5 seconds.
- After 10 clean steps in a row, the learned value rises again by one second. A step never works longer than your setting.
- If PHP names a time limit under 30 seconds, a step works at most 60 % of it.
- If a step reaches 90 % of the memory limit of PHP, it ends early and cleanly.
- If the same file fails three times, the plugin skips it, and the backup ends with warnings. 10 attempts without any progress end the job with an error.
Good to know
- A pause of up to 5 seconds is waited out by the self-request of the website. After a longer pause, WP-Cron continues the job, and WP-Cron only runs when someone calls the website. The open page of the plugin also drives the job on.
- Compression is not a setting. The plugin compresses with a fixed level and stores already compressed files such as images, videos and archives unchanged.
See also
- The “Settings” page
- When a backup fails or ends with warnings
- Get help: support report, troubleshooting and diagnostics
- Settings and scope with WP-CLI
- State, logs and support with WP-CLI
On the command line
WP-CLI not set up yet? How to install WP-CLI.
You also set both values with WP-CLI. A job that WP-CLI drives itself skips the pause. There the probe run measures the PHP of the command line; with --background the website drives it, and the result shows the limits of the web server.
# Show all settings with their values wp cloneworx-backup settings # Set the maximum per step to 10 seconds wp cloneworx-backup settings set step_max_seconds 10 # Set the pause between steps to 2 seconds wp cloneworx-backup settings set step_pause_seconds 2 # Start a long probe run driven by the website wp cloneworx-backup job probe --units=2000 --unit-ms=50 --background # Show the progress of the probe run wp cloneworx-backup job status