From LAMP to CUMP
LAMP, an acronym for Linux Apache MySQL PHP, happens to be one of the most common server side solution stack. It has been almost 12 years since this stack has been ruling. But is there a scope that this can be replaced in the near future? With Oracle taking over Sun, and therefore MySQL, there is little hope that MySQL will get enough attention from it’s company to grow. The most common free distribution to work as the server OS has been CentOS for sometime now. But again it’s configuration and package management is not as easy to handle as it should be for a modern server OS. Configuring Apache without an expensive control panel could be a nightmare at times. More over, it is too bulky on the memory side and does sadly on the performance side. May be the future solution stack overcomes all these issues and becomes a bit more easy to use. The most promising contender for this seems to be CUMP.

- Cherokee: Its a very light weight fast HTTP server and a very good replacement for the ageing Apache HTTPD. Cherokee has all the features that a modern HTTP server needs to have. Some of the features of Cherokee are:
- A beautiful and usable admin panel. Thanks to which we might not require an expensive control panel to configure Virtual Hosts on apache or to load a module on to apache. (Although a control panel might be required for other functions of the server like configuring DNS or SMTP)
- Very lightweight and has a small footprint on memory hence extremely fast
- It’s caching infrastructure. Another promising feature which makes it much more efficient in handling surges of traffic than Apache.
- Ubuntu: Come on!! Every one knows Ubuntu is a Linux distro. But why did I be so specific in picking Ubuntu as the choice for the future stack? The reason is usability. No one in the open source community pays more heed to usability than the Ubuntu team. But why do we need usability in a server grade OS? The reason is simple, so that we need not spend hours fighting with rpm dependencies or compiling source or editing .conf files. Ubuntu has a very strong repository support and a very powerful package management system (the APT) which ensures that we can manage our servers with ease like a modern server OS.
- MariaDB: A relatively new entrant to the scene. With the takeover of SUN by Oracle, the future of MySQL doesn’t look so bright. But eventually we will need something to replace MySQL with at-least the same or more features that it has. MariaDB is a fork of MySQL created by Michael Widenus (Monty), the creator of MySQL, which can act as a drop-in replacement for MySQL. It has some new features with the major being the inclusion of a new storage engine Maria Storage Engine which can be a much safer alternative to MyISAM. With the backing of the people who know the best about MySQL I am sure MariaDB is going to be the successor of MySQL
- PHP: This is the only part of the equation which remains the same. Why? As a language PHP happens to be one of the easiest to learn and swiftest to deploy. More over availability of loads of popular and stable CMSs and Blogging softwares written on PHP has secured it in a better position to face the future. Hope the release of PHP 6 adds something more to our equation. Although I am bit disappointed with the fact that PHP 6 has been delayed now for almost over 4 years.
I expect CUMP to be the solution stack of the future.
Awaiting comments on this.


I think FreeBSD/OpenSolaris will make a stand on the web hosting and database arenas thanks to ZFS.
FreeBSD/OpenSolaris do not have a community as Huge as that of Linux and now Ubuntu which is going to be a pivotal factor. As for ZFS, although an opensource project has license incompatibility of Sun’s CDDL with the Linux kernel’s GNU GPL, a very weired case of conflicting opensource project licenses so only way left is via FUSE but which will lead to degraded performance. Again EXT4 or XFS also look promising with linux. You can check out a comparison of the three here. http://manyeyes.alphaworks.ibm.com/manyeyes/datasets/89ade5ae14209c140114bcee8c082d35/versions/1
I really thing the future stack is Nginx+Node.js+NoSQL+*Nix call it 4N
in this stack NoSQL could mean riak, mongodb, couchdb, etc.
As for Nginx, Cherokee almost equals the performance of Nginx is most benchmarks, but it can be a great pain to configure and maintain Nginx for a new-bee. The future solution stack will not necessarily be performance oriented but could be more usability oriented. I also am a great fan of the one language concept which Node.js offers, write all your code(frontend+backend) in javascript but again its usability and stability will define its future. NoSQL, of-course, is the way to go for scalable future databases but usable and availability of pre-built applications for new-bees is something that is to be watched out for. 4N can be the future of hi-scalability solution stack but might not become popular with new-bees and hosting providers.
The future solution stack will not necessarily be performance oriented but could be more usability oriented.
Extraordinary claims require extraordinary evidence. You have presented no evidence.
I never said performance will not be a factor playing, but it might not be the major factor out there. Infact I chose Cherokee for it has been outstanding in performance and usability both.
I will give you evidence. What is the total number of websites on the internet?
Approximately 200 Million or more (Considering it was around 185 Million in January 2009 http://www.wlug.net/the-total-number-of-websites-on-earth/ ). Now how many of those do you really think will require scalability beyond LAMP? May be 1% or 2% (Considering that some of the websites with alexa rank of around 8500 run on LAMP e.g: http://www.linuxforums.org , Alexa rank: http://www.alexa.com/siteinfo/linuxforums.org so its not even 1% as you see). So do you say high performing and less usable solution stacks will be used by the 98% of the users out there who are seeking a solution stack?
I will give you evidence.
That isn’t extraordinary evidence. In fact it’s not even evidence: it’s just hand-waving (made-up fractions of big numbers aren’t big numbers, they’re made-up numbers) and weasel words.
@rob: I guess you didn’t understand my point, in-fact the topic at all. So no point arguing. These are no made up numbers for you to verify I gave you references. But still you keep on arguing on baseless grounds and asking for so called “evidences”.
BTW, I have not claimed anything here. I am no one to claim I just proposed my point of view which seems too hard for you to digest.
Haven’t you heard? Google is taking over the world. So we are all going to use Google App Engine. End of Story.
Jokes apart GAE is gr8 but might not be for everyone.
I was wondering if you have the link to the article?
Php6 being delayed for the most part has to do with Php5.3 which is a huge step/upgrade for developers (learning namespaces, closures, etc) and for hosting providers (compatibility).
So hopefully CUMP would include Php 5.3.
Very true. PHP 5.3 can give a paradigm shift to the people have been programming in PHP. Closures were a much needed addition to PHP.
I need some advice for my blog….I like your layout. Can you help me? 2 5 1
Thanks. It was easy to understand this material. I am waiting for new information about this theme.
Hmmm… “CUMP” is not a very memorable acronym. I’d recommend keeping the “h” in Cheroke, which would make the name “ChUMP”.
Having you considered doing a comparison of LAMP vs CUMP in terms of speed, security, and stability? Ubuntu already has deb files for Cherokee and MariaDB. I would really like to see a comparison because, as you said, there’s promise for this to be the solution stack of the future.
Hi Sarwar,
I would be glad to deliver a comparison between the two. Here only two components can be compared head to head in terms of speed as a parameter: ie Cherokee vs Apache and MySQL vs MariaDB, again Linux and Ubuntu cannot be compared in terms of speed/security because both are the same anyways but they sure can be compared interms of usability or ease of user. I am sure about the speed of Cherokee beating Apache but again the reason MariaDB is chosen as I already said because it works out as a drop in replacement of MySQL and holds a better future than MySQL because of a better team behind it.
Regards,
GeekTantra
I can’t agree with you in the argument for Ubuntu: “The reason is simple, so that we need not spend hours fighting with rpm dependencies or compiling source or editing .conf files.”.
Have you used any other Linux distro in the last couple of years? I can’t see a big difference between, let’s say, Ubuntu, Fedora or OpenSuSE (Ubuntu uses apt -or better aptitude-, Fedora yum and OpenSuSE zypper; but the tools are almost the same in terms of functionality).
I can’t agree with you in the MySQL/MariaDB part either. MariaDB it’s a *soft* fork that keeps in sync with the upstream version, but anyway… who cares? Nobody it’s using the *official* MySQL anymore but the packaged *and stable* version in each distro.
Cherokee it’s cool, but I wouldn’t say that the transition from Apache + mod_php (yeah, that’s why PHP applications are sooo easy to deploy and that’s why Apache it’s soooo memory hungry) to Cherokee + fastcgi it’s that easy, even with the neat webadmin interface of Cherokee.
Cherokee it’s for high performance solutions, but not the silver bullet you’re talking about.
I have three of my servers at work loaded with CentOS 5.2 and one with Fedora 12. First of all finding the right repositories for the right distro and for the right package becomes so big a problem for CentOS/Fedora/OpenSuSE. There is nothing like the Launchpad PPA which houses almost everything for us. So finally I have to end up compiling everything as the latest version is not available in some trust worthy repository in CentOS/Fedora or have to search a hell lot to get the right RPM for my distro only to find that it had some dependency again. As a matter of fact some people use apt-get on Fedora or CentOS to make their life simpler. Actually I am planning to migrate all my servers at work to Ubuntu for this very reason. Trust me I am not the only one. Yes, If RPM based distros have something like the PPA we can certainly think of the RPM based distros standing a chance.
The reason MariaDB against MySQL is the team behind MariaDB is going to take it some where better than where MySQL is going. As you might have seen there has been a decrease in the rate of development of MySQL 6 (with Falcon) recently because of the core team has moved away.
Cherokee with FastCGI is much easier to configure with the nifty admin panel. It hardly takes any time. The only part which takes some time is configuring the mod_rewrite scheme for clean URLs in cherokee regex routing. But that is a one time thing and when people start using Cherokee as a mainstream server for PHP, all php apps will have a readme file with the right routing for cherokee like the way they have .htaccess for apache.
I’d have to disagree with you on #2. As soon as you have a dependency that is not met by your distro or worse conflicts with the one supplied you are out of luck and all distros look alike. Also, a blind reliance on the default settings means your are likely to be running processes you do not need or possibly should not run. The distribution does not eliminate the job of the admin. Some comments here mention PHP 5.3, but the latest Ubuntu comes with 5.2 out of the box. What does aptitude search maria yield? Checking the man page for apt shows a date of 1998. I don’t think you can justly claim that apt is somehow more “modern” or powerful than any other package manager without any evidence.
I have mentioned Launchpad’s PPA as a source of most of the packages and not the default out of the box repositories. Its the availability of single secure repository set which almost gives us most of the packages and in their latest versions which makes it all work gr8. If it were an rpm based repositories the case is worse. You have to individually search for the specific repositories, most of which might be some privately owned or university repositories, for the latest version of each package. For example you mentioned PHP 5.3 you can find the latest unstable version for lucid at https://launchpad.net/~zulcss/+archive/php5.3-lucid.
Again as you said the distribution no doubt can eliminate the job of an admin but sure can make it easier. It is also a fact that you might run out of luck when you are searching for the latest version of any software but the chance that this happens with Ubuntu is much lesser when compared to other distros, which may be attributed to the large community behind ubuntu. In-fact I also have faced this problem but at-least while installing from source most of the dependencies can be found from the repositories.
As for MariaDB just check the download maria page ( http://askmonty.org/wiki/index.php/MariaDB:Download ) of-course there is one for CentOS as well but what about Fedora or OpenSuSE?? You can only hope that you don’t get dependancy issues with them or go the safer way and compile it yourself or search for repo where you find rpms for the same.
As a matter of fact APT is older than YUM. As far as features of apt are concerned it is considered more advanced than yum because of some features like apt-pinning. It is again not supported natively on yum. Apt-pinning basically allows you to manage a mixed set of stable or unstable packages.
See the argument here is not that you can’t do something on Fedora/CentOS/OpenSuSE of-course you can (They are all the same Linux platform after all). But Ubuntu makes the life of an admin much easier and there is a hell lot of community support out there.
BTW `man apt-get` shows me 08 November 2008.
I am also waiting for the portage (Gentoo) guys come and comment on the choice of Ubuntu.
To go away from MySQL was already a goody idea before Sun was bought by Oracle, because overall it is the better database. If I were about creating a new default stack I would drop PHP too. PHP has become better, but compared to, say, Python it is ugly.
My suggestion for the new web stack is: Linux, Light httpd, PostgreSQL and Python, short LLPP.
[...] Ce billet est une traduction personnelle d’un billet de Geektantra [...]
[...] via [...]
I teach my friend that linux Operating system is so much better than Windows xp however not one of these folks have yet replaced!
[...] From geektantra.com [...]
Great post, I bet a lot of work and research went into this article.
There’s a bug with your footer.. figured you’d prolly want to know
[...] [traduit par] Posted in Informatique « Article de l’express sur ubuntu You can leave a [...]
Meine Couch ist jetzt über 10 Jahre alt und denke jetzt ist es mal an der Zeit eine neue zu kaufen. Der Bezug des neue Sofas sollte ein bisschen was aushalten, da ich eine kleine Katze habe die des öfteren mal über das Sofa herfällt und ihre Krallen schärft. Kann mir vielleicht jemand sagen, welche Stoffe besonders reißfest und unempfindlich sind?