Top developers recommend Pantheon’s Custom Upstreams over Drupal Multisite because it protects you from the risks of running your sites on a single codebase, while giving you the flexibility you need to customize hundreds, or even thousands, of sites. What does this new, day-to-day workflow look like? Compare how Custom Upstreams stacks up against Drupal Multisite.
The Risks of Drupal Multisite
Drupal Multisite works for cookie-cutter situations, where the difference between the sites is limited to content alone. But customers are always asking for new features, so this can be a challenge to stick to as a policy. Once customizations to configuration or code are made to a site, maintenance quickly becomes much more difficult and time consuming. But adopting a zero-tolerance policy on code deviation can severely limit your ability to deliver features your end users need.
Single Points of Failure
When you share a common codebase across a number of sites, you only have to deploy one bug to take many or all of them down. As you have more and more instances, it becomes increasingly time-consuming to vet a proposed change across all the properties it would impact. If you’re not able to test, you can’t deploy with confidence. This makes Drupal Multisite risky to update.
Illusion of Simplicity
The idea of only needing to handle and maintain one codebase for a large number of sites may seem appealing. But while it can seem like a time save at first, the reality can differ harshly. Since site owners cannot make any modifications to sites, that leaves you to handle all their needs and requests.
If you implement Drupal Multisite, you have to be comfortable with the notion that you are going to be responsible for every feature improvement or innovation on every site. Your end users cannot hire their own developer or come up with their own solutions. But delivering a complete "Website as a Service" solution can be a daunting task. The scope of features to launch may be large, and the long-term responsibility for continued upgrades and improvements is significant. Even for teams who are adamant about delivering a turnkey service, rather than a flexible CMS tool often underestimate the amount of work required to get there.
Acquia® also has a Multisite-based commercial offering they call Cloud Site Factory, based on their now abandoned Drupal Gardens project.
As with a lot of enterprise software it's hard to determine what Site Factory really does or how it works without becoming a customer. While the enterprise nature of Site Factory equates to proprietary (non-open source) technology, it contains site management functions geared towards the cookie-cutter microsite use-case. While the technology is not flexible, it does solve the problem of mass producing websites that are identical.
However, Site Factory doesn't mitigate the single-point-of-failure issues, as it's still a standard Multisite architecture. And unlike with Drupal Aegir, deployments are reportedly all-or-nothing, without the ability to pick a few sites to be updated first, or hold back some sites that aren’t ready to receive updates.
How Pantheon Custom Upstreams Work
Pantheon’s Custom Upstreams leverages Pantheon’s industry-leading version control and containerization to deliver all the value of Drupal Multisite, but without the risks and drawbacks. With Pantheon’s workflow, you don’t have any single points of failure. The common elements are managed via a remote "upstream" Git repository, but deployed to independent containers on their own site project/pipeline. This not only solves resource isolation and scalability better than shared clusters, it also lets you control the pace of upgrades to suit your use case.
And Custom Upstreams gives you the control you need to set standard requirements for sites while also giving site owners the flexibility to make specific changes they need.
Experienced Drupalists can attest that the multisite approach has been fraught with issues. We opted instead to harness Pantheon’s Upstream workflow, which allowed us to unify all sites with a common codebase while also customizing each site with each school’s own configuration.