For the past 10 years, the LAMP stack has laid waste to proprietary software stacks. Yes, Microsoft has held onto gargantuan profits, but LAMP has become the foundation for leading web services, whether Google or Facebook or [Insert Big Web Brand Here]. LAMP is the future.
Or was. That is, until cloud killed it, as Eucalyptus CEO (and former MySQL CEO) Marten Mickos posits in a great keynote from the Percona Live: MySQL Conference & Expo 2012.
No, LAMP is not going away. But it’s comfortable existence as a somewhat coherent instantiation of Linux-Apache-MySQL-Perl/PHP/Python is gone. Mickos, despite speaking at the MySQL conference, was quick to point to big changes in the database market, many of them not conducive to MySQL’s dominance in the cloud:
As he notes, we’re less concerned with stacks anymore:
From 2000 to 2010, it was all about the LAMP stack. To build an app, you took one Linux, one Apache, one database, one language. You stacked them on top of each other. You multiplied them to scale out….Today applications have many different languages and databases, and they’re not stacked upon each other. We don’t stack things anymore.
Furthering this idea, today, in the cloud, users spin up new VMs. Each VM can have its own version of Linux. Each app typically has many databases (MySQL, Memached, Sphinx, Hadoop, etc.) and they are not stacked on top of each other. Scaling out may mean scaling out with different instances.
Mickos points to Amazon Web Services as an example: 10,000 images available for people to use. Those are the new distributions. Not Ubuntu or RHEL or whatever flavor of Linux you prefer. They contain numerous different combinations of tens of pieces of software.
This doesn’t, of course, render a Red Hat or MySQL (Oracle) obsolete. But it changes the game considerably, and makes managing the diversity of infrastructure within the enterprise much harder in many ways. Indeed, following Randy Bias’ thinking, this complexity may be the exact opposite of what is needed to scale in the cloud. While Mickos is right to point to the disparate software configurations Amazon offers on AWS, AWS itself uses a very unified set of infrastructure components, down to the hardware.
Still, Mickos’ point feels correct: right or wrong, we no longer rely on a unified LAMP stack to run our applications. We use a variety of Linux distributions, databases, programming languages, etc. Whether we’ll get back to a unified infrastructure “stack,” in the way Bias suggests we should if we hope to scale, is an open question. Maybe it will be the successor to LAMP. But for now, it’s complexity all the way down.