Today we’re going to review how to speed up your MainWP Dashboard sync and update functions. Out of the box your MainWP Dashboard comes with default settings setup to not crash shared hosting or poorly setup servers. However, through your Advanced Options you can speed up your MainWP Dashboard to match the power of your servers.
To get started you need to go to your MainWP Dashboard then visit Settings and click on the Advanced Options tab. Once there you will see three options:
Cross IP Settings:
This tells your Dashboard how fast to hit your child sites on different IPs
IP Settings:
This setting tells your Dashboard how fast to visit sites on the same IP
Front End Requests
This is the amount of threads or connections that your Dashboard will send out at any one time.
We’re going to adjust these settings until we find the fastest setup for the MainWP Dashboard.
Note: These findings will generally be different for each Dashboard since it depends on the servers involved.
The Setup
In these test we are going to use the following server setups for no other reason then I already have the servers setup and ready to go.
Our MainWP Dashboard is hosted on a DigitalOcean (referral link). You can use the same setup I have by following the steps in “Installing your MainWP Dashboard on a Digital Ocean Droplet”
Our 100 Child sites are all hosted on the same Storm on Demand 2GB SSD fully managed server running CentOS 6 64-bit with cPanel
The 100 sites have different themes and different plugins from each other, the same as you would have with most groups of WordPress sites.
I used Cpanel’s Home Directory Backup and restore so I was testing with the same variables.
The Tests
In the tests we will have 212 Total Updates, 63 WordPress core updates, 107 Plugin Updates and 42 Theme Updates.
Times with Default Settings
Sync 100 sites 1 min 52 seconds
214 Updates 5 min 8 seconds
63 WordPress updates in 1 M 3 seconds
107 Plugin updates 2 Min 55 seconds
44 Theme updates 1 m 52 seconds
Speeding things up
Since all the child sites in this test as hosted on the same server all I need to change is the IP Settings and Front End Results.
I’m going to start with a moderate tweak to see what it does.
Changing in IP settings from
Maximum simultaneous requests per ip from 1 to 10
Minimum delay between requests to the same ip (milliseconds) from 400 to 200
Changing Front End Results:
Maximum simultaneous sync requests from 8 to 10
Since we are going for speed I’ll leave Minimum simultaneous install/update requests set to 3
Speed Difference
Sync 100 sites 35 seconds saved 1 minute 17 seconds!
214 Updates 2 min 12 seconds saved 2 minutes 56 seconds!
63 WordPress updates in 59 seconds saved 4 seconds 🙁
107 Plugin updates 41 seconds saved 2 minutes 14 seconds!
44 Theme updates 29 seconds saved 1 minute 23 seconds
Tweaking your setup
You MainWP sync and update speed is dependent on the servers and how much they can handle. Once you start receiving “Child site disconnected” messages then you will know you have pushed your setup as far as it can go.
How fast can you get your Dashboard and Child sites to update?