Did interpreted languages meet their match?

A lot of books and training resources will tell you PHP and MySQL is a perfectly OK solution for enterprise-class websites. Some other books will tell you Ruby on Rails is also a very scalable solution. Afterall, both Facebook and Twitter, now some of the most popular websites out there, run on PHP and Rails respectively.

Rails’ problem has long been known to fail Twitter, but Facebook was considered rock-solid, and so was PHP. But even Facebook recently started having major scaling problems. So, did interpreted languages meet their match?

Evidence shows that, part of the problem is the language themselves (PHP, Ruby and what not), and another part is MySQL. Just look at Google or Microsoft. Ever had a problem with Hotmail scaling? No, it runs on ASP.net and SQL Server, and those baby scale very well because of how they’re built. Tests conducted against scalability of MySQL and PostgreSQL already prove MySQL to be a very poor performer. Yup, it’s faster than every other database system, but only while there isn’t a lot of connections on it. Jump that up and it just can’t keep up. Ever had a problem with Google services scaling? No, and they certainly, unlike some of what people think, aren’t using PHP and MySQL. Google actually has their own custom database engine and most of Google’s products are Python that has been compiled and C++ (yes, Gmail’s backend is C++, go figure). And of course it’s all custom stuff on custom servers too.

I think what this shows is that no matter what you do, interpreted languages are still interpreted, and MySQL doesn’t scale. Don’t get me wrong though, I don’t think the Open Source community isn’t capable of matching the giants’ solutions. Don’t forget Java is Open Source and compiled in the same manner as ASP.net languages, and PostgreSQL is a very good Open Source database too. The only problem with those two is support, it’s actually harder to find Java and PostgreSQL hosting than it is to find Microsoft-equivalent solutions. You could always do it yourself on your own server (might I recommend Rackspace’s Cloud Servers). And of course it’s much more difficult to learn (truthfully I think scaling PHP and MySQL is even harder).


Share this!
  • Facebook
  • FriendFeed
  • Twitter
  • Digg
  • LinkedIn
  • del.icio.us
This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>