Posted on

Speeding Up MainWP for Fun and Efficiency!

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

crossip

IP Settings:
This setting tells your Dashboard how fast to visit sites on the same IP

ipsettings

Front End Requests
This is the amount of threads or connections that your Dashboard will send out at any one time.

frontend

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.

cpanelbackup

The Tests

In the tests we will have 212 Total Updates, 63 WordPress core updates, 107 Plugin Updates and 42 Theme Updates.

updateoverview

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?

Get MainWP News and Notifications

Dennis Dornon on Twitter
Dennis Dornon
Co-founder at MainWP
I am neither a coder nor a designer. My coding confession.
This is an older post so comments are closed.
You can continue the discussion in the MainWP User Group.