Multisites are a Bad Idea for Many Sites

Multisites are a Bad Idea for Many Sites

Many things sound like great ideas. Not all of them are in practice.

As open source becomes more and more popular, we see organizations rolling out many sites across their organization. As they try to manage them, many of them turn to “multisite” networks.

In short, a “multisite” allows you to run many sites from a single codebase. The idea is that you can update the codebase once and automatically apply those changes to all your site. In theory, it’s a great idea. In practice, it often causes more problems than it solves.

In this blog post, I’ll explain why you should think very carefully before setting up a multisite network. No matter what software you use, there are often better alternatives.

WordPress Multisites

This post was on my mind for a while, but I was inspired to write it after watching the video of Mika Epstein at WordCamp San Francisco.

Her presentation was entitled: “Don’t Use WordPress Multisite”

{snippet dontusewpmultisites}

The title of Mika’s presentation was tongue-in-cheek, but she gave a long list of reasons to think twice about using WordPress multisites:

User management is hard:

  • Logged in users are logged in for all sites
  • User profiles are the same for all sites
  • Access control levels become inflexible
  • MultiSite doesn’t let you let your users install themes and plugins
  • Restricting plugins to certain sites is tough

Sharing isn’t hard:

  • Some features such as widgets don’t work with multisites
  • Some major plugins like BuddyPress don’t work with multisites
  • Changes to theme files are changed for all sites

Breaking up is hard to do:

  • Once a site is in multisite network, it’s not easy to extract

More reading:

Drupal Multisites

The best explanation of the problem with Drupal multisites was written by Pantheon. They outline several downsides including the fact that multisite networks use a single codebase and produce a single point of failure.

media_1375807322227.png

There’s the problem of traffic:

“The most obvious problem of running a lot of sites on one codebase is that any one of them could face a traffic spike, and negatively impact all the others. If you’re looking to serve a large volume of sites, the risk becomes non-trivial that one site’s “best day ever” is the other 99’s worst.”

There’s the problem of one mistake cascading across the sites:

“One syntax error, and all the sites go down.”

And updating becomes painful also:

“It’s never really safe to update the code “underneath” a Drupal site without running update.php, and it’s also infeasible to run update.php simultaneously across a large number of sites. There’s also the reality that some upgrades may not go smoothly. It’s up to you to figure out how you want to deal with this, and the results are often… messy.”

Because of these problems, the Drupal community has developed a more sophisticated alternative to default multisites called Aegir: http://www.aegirproject.org. Essentially, Aegir is a multisite management system built in Drupal for Drupal. It allows you to use multiple codebases and deploy across multiple servers. Aegir works well, but still can’t avoid:

“the intrinsic limitations of multisite: platform fragmentation. If you have non-trivial divergence in code or in deep configuration between sites, you will inevitably encounter a situation where the upgrade path forks — most sites will work one way, but others have different requirements.”

Joomla Multisites

Joomla is the only one of these three CMSs that doesn’t have multisites as a core feature.

It does have a fairly reliable extension called, logically, Multi Sites. It works in a similar manner to Aegir and WordPress multisites with a single master installation controlling slave sites.

media_1375809531984.png

Alternatives to Multisites?

Don’t get me wrong, multisites is a viable option for some use cases. My point in this blog is that those use cases are far rarer than people realize.

What are the alternatives in Drupal? Larry Garfield at Palantir has a good breakdown of the available options:

“Drupal has several different options available for users looking to run a series of Drupal sites together, each with its own trade-offs”

All in all, he outlines 7 different ways that you can manage many Drupal sites. Larry didn’t even mention the multisite tools provided by companies such as Acquia and Pantheon. In short, the default multisite option is just one of many possible paths.

In WordPress, there are some powerful tools for managing many sites. ManageWP, WPRemote, InfiniteWP. These allow you to control all of the sites from a single dashboard and to do so more effectively than with a default multisite setup. Rebecca Markowitz at WPGararge has a comparison between these three services.

In Joomla, some hosting companies such as Cloud Access are building control panels for controlling many sites and others such as Siteground provide automatic core updates.

Over to You

Have you used a multisite network? Was it worth the effort? Do you have any advice for others who need to manage many sites?

Instructor

  • Steve is the founder of OSTraining. Originally from the UK, he now lives in Sarasota in the USA. Steve's work straddles the line between teaching and web development.

0 0 votes
Blog Rating
Subscribe
Notify of
31 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Kenneth Koppervik

This is a interessting topic since I’m on the verge of setting up a multi site solution. I’m on Joomla looking to use the component you mentioned.
I hope to see some comments from people having first hand experience with my mix.

steve

Thanks celius. I know at least one of our team has substantial experience with it and it worked well for him. He used it in a very specific situation where he ran the server and had a lot of very homgenous, low-traffic sites.

Chacapamac

Thanks, Yes I watch —> [url=http://www.jms2win.com]http://www.jms2win.com[/url] Joomla for a while now – seem interesting for that type of project – I think this system manage most of the problems presented here, not sure to what level.

vervedigital

Perfect timing for this topic. Just last week I was considering JMS Multisite for Joomla. I have a business that has several different services. I was considering using this extension so that I could use one site as the main landing page for all of the sites, then have the different services as subdomains. I am a bit nervous about doing this though as I have found very little documentation on how to do this, the benefits and the consequences. I think this would be a great top for OSTraining to cover more in depth.

steve

Thanks Tia. There are definitely some use-cases for multi-sites, but with experience, I’ve found that I normally recommend simpler solutions.
To take a simple example, for this site we initially built one site for online training, one for live training and one for each book. We’ve ended up combining them all into one.

Miles Baltrusaitis

Interesting. Did you simply use different templates for different sections of the site?

Miles Baltrusaitis

I have to admit: I’ve always been tempted to try the multi-site approach for Joomla. My company sells 3 separate products (with 3 separate knowledge base websites) and would really like to synchronize user accounts. It seems from this post though that all we really want to accomplish is single-sign-on. I guess that’s more of an authentication issue than a true need for multi-site.

steve

Hi Miles, yes that’s exactly the kind of solution I’m encouraging here.
Once people think about it, there are normally simpler and more flexible options.

diogenese19348

Buddypress does work with Multisite. It just has to be installed on the main site, you can’t install it on a subsite. That bullet point needs changing a bit.

aw

Thanks for the article Steve, it’s worth another article for us Joomla users. I’ve considered multisites, but what holds me back is the learning curve.

carson3511

I think the most major problems with mulitisite implimentations is not so much the updates as it is the fact of being stuck on a certain version (RE: 2.5, 3.5, 4.5 etc). Migrating one site is already enough to drive you crazy. Could you imagine trying to upgrade multiple sites with a common base? Unless they were all extremely similar sites with very little additional features or content then I would assume you would be virtually stuck with that version series. Maybe I’m wrong.

steve

You’re not 🙂 You’re exactly right, Mike.

modernmagic

I’m not sure if this is of any help in your situation. I created one joomla 2.5 site to manage over 40 separate “sites”. It is for registered users only.
Each site was for a different company to login and order print materials. I did it with usergroups, a login redirect extension to redirect to a category with a specific menu module. I used Advanced Module Manager to control which User Group Levels saw which menu module. It even uses kunena as a makeshift proofing system with a similar usergroup category permissions method for each of the 40 companies. There are also categories and menus that all 40 “sites” get to see.
[url=http://www.modernmagic.com/projects/integrated-senior-living.html]http://www.modernmagic.com/…[/url]

savethefrogs

I have always wondered what to do about multiple languages. For instance, I have [url=http://www.savethefrogs.com]www.savethefrogs.com[/url] already. If I want to have a Spanish site, should it be [url=http://www.salvalasranas.com]www.salvalasranas.com[/url] (a separate site) or just [url=http://www.savethefrogs.com/spanish]www.savethefrogs.com/spanish[/url] (an area of [url=http://www.savethefrogs.com]www.savethefrogs.com[/url]). I use Dreamweaver but plan to convert to Joomla (and if OSTraining made a video about how to convert a site from Dreamweaver to Joomla it would be fantastic!). Thanks!

Kerry

Kyle Taylor

We started building sites in a multisite fashion in Drupal, but not the way people are currently using it. We’re not putting multiple domains or separate sites on the same codebase, but subsites like forums and knowledge bases.
The equivalent would be installing all modules under sites/all, but then you have the performance load of all the modules running simultaneously whenever you don’t need them all at the same time. So we put all of the sitewide modules in sites/all, but break up the more specific ones. Such as putting Advanced Forum and gamification modules under sites/forum, and knowledgebase views and settings under sites/kb, then use Bakery Single Sign On so users can stay logged in across all subsites.

steve

Thanks Kyle. That is an interesting solution. Do you have an idea of how much of a performance boost that solution gives you?

Kyle Taylor

I couldn’t give you an exact number, but our dev team agrees that it definitely feels it’s a lot smoother than some other larger sites we’ve built. I think the main purpose for us is management. We know all subsites are running the same Drupal core, but we don’t have to worry about upgrading a specific contrib module on the forum that might break something on the marketing site. It’s also great to keep features together in their own subsite as well.
Now there are a couple drawbacks we’ve seen with Bakery since it’s based on cookies, but we’ve worked out a lot of them for now and we’re hoping it only gets better.

steve

Thanks Kyle. I’m sure others reading this will find that a really useful idea.

alex

I moved most of my smaller customers (companies to whom we built websites) who had the simpler sites (home/about/products/team/blog/contact) to wordpress and have them all under a multisite network.

Since 3.5 it’s possible to have different roles and assign users specifically to certain sites – which we do – and by using child themes, have each customer site with all the required customization.

All 330 of them under one shared hosting account, all happier because it’s easier to edit than joomla, and with less worries for me.

One click updates, network-wide monitoring, automatic backup in the host, so most flaws can be reverted and the customers just have editor profiles – which is what they want – so no exotic plugins or viruses.
When to the right type of site, multisite is a blessing (the “viable use cases” that steve points out). And too bad J! doesn’t have it in the core.

steve

Thanks Alex – that does sound like a good use case. Heavily locked-down, heavily monitored, fairly simple sites.
Congrats on getting that many customers too 🙂

Marc V.

Can I have more info on how you accomplished this? I’m asked to set up about 360 sites…

ari salomon

+1
i have had nothing but headaches with WPMS and I want to warn anyone that they should expect lots of extra work if they go that route.

Fernando Molina

What about MightySites for Joomla? The reviews are pretty interesting.

steve

Hi Fernando. I’d say this advice applies to almost all multi-site set-ups. The underlying principles behind multi-sites that cause problems, rather than any particular products.

Jon@369

If you developed a website with one set of features, and the only configurable information was site name, a few pictures, and a few social links, and you wanted to sell copies of this website to people… wouldn’t multisites be the way to go? Otherwise, you’d have to stand up a separate, full installation for every customer… which I guess could be automated using something like rcopy? What are your thoughts?

Chris Countey

I’m testing out WordPress Multisite on a new project at [url=http://smashflare.com]http://smashflare.com[/url] It’s a personal endeavor so I’m excited to see how it will turn out.

Cluemate

I always prefer multisite to reduce cost. With Godaddy single domain hosting plans, I can run many of sites.

EP

I’m using multisites because I want my vendors to be able to have their own store check out and have access to the many payment gateways it has to offer the vendor. I want an eBay setup but with the extra gateways

Would this be the best option?

Nick

Good question, EP! A better choice would likely be to look at e-commerce solutions that have multi-vendor built in. Here’s a good list to start from:

[url=https://www.ostraining.com/blog/general/multi-vendor-commerce/]https://www.ostraining.com/…[/url]

Bijumon

Hi Steve,
I need your advice on subsite implementation in a parent website in Drupal.I would like to know whether going for multi site with single database with shared tables option. If so i have many content type a lost of tables need to be share.The parent website which has events,News, Publication content types and users with different roles. The client need a 10 sub site in which the content needs to shared from parent website and some content need to share from subsite to parent too. They also need to add separate contents and users as well. Also they need to share some users ( admin/editors) to all subsites. Please advise what method we need to take. Its bit urgent.

Megan

Totally agree with your thoughts in the article. And I want to advise using SiteGround hosting for developing your site. You can read its review here [url=https://webhostinggeeks.com/providers/siteground]https://webhostinggeeks.com…[/url] Anyway, SiteGround also has a top class 24/7 customer support. You can contact them anytime whenever you are stuck with some issue on the website.

31
0
Would love your thoughts, please comment.x
()
x