My recent story on the dimming of the LAMP stack sparked a thoughtful reader response from John Locke, the manager of Seattle-based Freelock Computing. The story concluded that while an all-open source stack is still a valid concept, there are many more open source options that LAMP (Linux, Apache, MySQL and Perl, Python, PHP) is largely irrelevant. I made a single exception for Apache, the popular Web server.
Locke argued, however, that even Apache has a growing array of alternatives such as the Lighttpd Web server, the Apache FastCGI Web interface, the Nginx proxy server and others.
But what undercuts the LAMP stack more than the advent of additional open source options is the emergence of cloud frameworks, Locke said.
Initially, cloud computing meant renting compute power on demand from the likes of Amazon Elastic Compute Cloud (EC2). This meant renting a host virtual machine, programming the top layer, adding libraries and then when it was all done, managing the host and the virtual application, Locke said.
The problem with this model is that data centers are responsible for scaling the application up or down in response to changing volume requirements, he said. To solve this problem, Google, as well as Microsoft’s recently announced Azure platform, go beyond computing-on demand and manage the entire process with frameworks. All you do is write the application code (yes, you still need the P in LAMP), put it atop an application framework, and the framework will scale the application up and down as needed. No further involvement required. No LAMP stack required either.
Two successful examples of cloud frameworks are Salesforce.com and Facebook, he said.
The downside of frameworks, however, are loss of control and potential vendor lock-in, Locke said. The risk is less with Amazon EC2 since its controls are far more limited, he said. When writing an application for a specific vendor’s framework, however, a customer can lose portability because the provisioning and scaling mechanisms are behind-the-scenes and the source code and licensing are not necessarily readily available, he said.
The biggest challenge to LAMP as well as the Java and .NET stacks, therefore, is not the growth of additional choices but the cloud frameworks which may make all the stacks irrelevant. While handing over management and control is convenient, it also has its downside: you have to live by someone else’s rules, Locke said. Just like a condo or regulated housing community, you’ve delegated the work, but you’ve also lost your freedom. Time will tell if you’ve made a good bet.