The average Drupal hosting stack is getting much more complex. The average high-performance Drupal stack might have Apache or nginx, PHP, HAProxy, Varnish, Memcache or Redis, SOLR and Tomcat, MySQL, and a CDN.
Each of these tools is great at a particular job, but the sheer number of daemons involved can have several adverse effects:
- More configuration is needed to get developers a copy of the production stack for testing
- Client system administrators may be less familiar with some of the new tools you wish to use to build out a site for them
- More to install, more logs to check, more possible points in the stack to possibly have to debug when things go wrong
With that in mind, let's take a look at some alternative options around a leaner, meaner, open-source hosting stack. We’ll take a look at how much can be done with the following 4 tools:
- nginx for reverse proxy caching, load balancing, and as a web server (we’ll also take a quick look at some of the more esoteric options that nginx offers, such as embedded lua programmability and the ability to connect to Redis and SQL databases, but those are a little outside the realm of keeping the stack simple.)
- PostgreSQL as a SQL database and for full-text search
- Redis for caching, queueing, and statistics
Here's to a shorter, sweeter Drupal web hosting stack!