WordPress.org

Ready to get started?Download WordPress

Forums

a couple of questions on wordpress multisite/network capabilities (4 posts)

  1. gilzow
    Member
    Posted 3 years ago #

    Contemplating the idea of moving a collection of sites (80+) into a wordpress network. Before doing so, I have a couple of questions I'm trying to answer and havent quite been able to find an answer to yet. Hoping someone in the community can chime in and/or point me in the right direction.

    1. How many sites are you hosting?

    2. What does your technological infrastructure look like? Load-balanced MySQL server instances + load-balanced web server instances? Single MySQL server + single web server instance?

    Essentially, I'm trying to gauge where the break point is. How many wordpress sites can a single MySQL instance realistically handle before I'll need to split it out into a load-balanced set-up? Our web servers are already load balanced.

    3. How do you manage themes? It appears that themes have to be installed at the upper/parent level and then enabled for each site. Each site can be given the ability to use a theme, but does not have the ability to edit the theme. Child themes (http://codex.wordpress.org/Child_Themes) appear to be a possible solution, but even then, it looks like the users arent able to edit the child themes from within wordpress and would need some level of file access to make modifications. Not ideal since I would then have to manage users/access in both wordpress and on the web server.

    4. How do you manage plugins? Like themes, it appears that plugins have to be installed at the parent level, and then enabled for child sites. Do you have a set group of "approved" plugins and those are the only ones allowed? Do you have a process for site owners to request a plugin be installed? What about those who want to develop their own custom plugin?

    5. Any warnings/gotchas when it comes to running a wordpress network you wish someone had told you before you started?

    Thanks in advance for any advice/insight you can give me.

  2. Samuel Wood (Otto)
    Tech Ninja
    Posted 3 years ago #

    Lot of stuff there...

    From talking to some of the folks at Automattic, I've heard the number thrown about that a single mySQL instance can hold about 1000 sites before getting a bit overloaded. Obviously, this depends on traffic patterns more than anything else. I know that they run multiple mySQL instances on each server, to the tune of around 1000 instances per server. Roughly. Really, how many sites depends on too many factors: hardware, configuration, network infrastructure, etc.

    For only 80 sites, fitting them in a single database is not really a major undertaking.

    Load balancing-wise, they use HyperDB for the most part. It's somewhat complex to use, but the basic idea is that it routes inserts and updates (writes) to a single master server, which is replicated to one or more other servers used for selects (reads).

    For systems where you want "untrusted" people to be managing their own sites, giving them access to PHP editing is not really an option. So yes, users can't edit themes. However WP.com uses a paid upgrade system which allows the users to optionally add their own custom CSS code. There's several plugins that emulate this sort of setup: http://wordpress.org/extend/plugins/search.php?q=custom+css

    Honestly, you'd be surprised at how much customization you can do with only CSS to work with.

  3. gilzow
    Member
    Posted 3 years ago #

    Thanks Otto. Absolutely understand about the multiple factors thing when trying to determine the number of sites a single MySQL instance can handle. Was just curious if there was enough history with wordpress network that a general rule of thumb had developed. The plan currently is to start with a single instance and then monitor.

    As for themes/plug-ins, what we are hoping is to offer wordpress as a secondary CMS options to our various departments. Each department would have a designated admin who is trusted. The understanding would be that if they customize a theme, create/install a plugin that kills their site, then it is their responsibility to fix unless they want to pay us to come in and troubleshoot.

    We would prefer to not give each one their own installation of wordpress, so that we can ensure that the core is up-to-date, https is being used for login and that critical plugins (like wpDirAuth) are being used.

    Totally understand about the amount that can be completed with just CSS. However, knowing my departments, they are going to want to make modifications beyond just CSS. Just trying to get a grasp on what options are available before we make an official proposal.

  4. Just to add to Otto's great advice...

    1. Not counting my test sites and a handful in beta, and any of the client sites I've ever worked on... I have two installs.

    One is a multi-network install with a few added domains for my main "single" sites. The second network is for family. So far, my mom hasn't broken it. ;)

    The second install is a network that swelled up over 600 active blogs & users. That seems a rough guideline for when you need to think about scaling databases, at least. This real-life use case seems to be borne out with other installs as well.

    I have only ever come across one exception to that, but they got literally thousands of comments at a time, on specific days.

    2. Single mysql for that user, single server, dedicated box, tons of room left over.

    3. Get themes that have lots of options users can access from the backend so they don;t *have* to edit theme files. the css plugins are ones I recommend all the time, as well as choosing themes that have loads of options to pick from for things like layout. They do exist. ;)

    4. you;re the only one installing them, you have to test them all first. Most work fine, occasionally one has unexpected results when either network activated or just used in a network situation.

    you want to try and avoid plugins that add a butt-load of tables for every blog.

    If you;re hosting a blog for someone who wants to develop their own plugin... then check it over in your dev install before you put it in the live site.

    5. Users are global to the network. ;) Remember that.

Topic Closed

This topic has been closed to new replies.

About this Topic