A piece of Ruby on a Windows or a Linux plate?

ruby Some time ago I overheard a conversation about performance of Ruby applications on Windows or more precisely it’s lack. I don’t usually believe this kind of conversation until I see something with my own eyes. I saw it today.

I am a Linux enthusiast. I use Linux on my desktop and usually deploy applications on Linux servers. I know that Linux is fast and reliable. I don’t need proof for that. But I thought that Ruby will perform somehow similar on both platforms. Wrong.

I wrote a little application that is pooling a lot of XML content (RSS feeds) from web sites, parses it and extracts a data. It also updates MySQL database with new content.

Running application on Windows took me 24 minutes (something about 2000 web sites). Dual core machine with empty MySQL database and without any intense processes in a background (excluding Windows itself hehe 🙂 .

Then I run it on Linux with same configuration, same network connection, empty database and no intense processes in a background. It took 7 minutes. I know that maybe server that the sites were requested from could respond slower but COME ON. How much slower it could be.

I never trusted Windows when it came to a production environment. Now I don’t trust it even more. Where is the 17 minutes that Linux didn’t need it? Is it MySQL performance on Linux or I/O operations or maybe networking?

I’m looking forward for Ubuntu Hardy to install it as I did some damage to my old installation and I am to lazy to fix it. Developing on Linux was always much faster and more flexible for me. Plus I do get my favourite tool, powerful command line 🙂

Greg

Do NOT try this at home kids

greg I’ve done a horrible thing yesterday. It ended up with coming back to Windowz again. But let’s start from beginning 🙂

When I was writing the post I looked at some news in Linux community and came across KDE 4. It’s got an eye candy look. I have a weak spot for my desktops. I decided I got to have it and give it a test drive.

Quick Google and search on forums showed me that I can get it with latest development release of Kubuntu. So, all I need to do is two steps. Install Kubuntu desktop on my Ubuntu (sudo apt-get install kubuntu-desktop) and then upgrade to latest version (sudo update-manager -d). BIG MISTAKE. I mean all updates and upgrades went fine.

It took about 30 to 45 minutes to finish (in a mean time I could play and talk with my 4 months old daughter about my desktop change decision, she is pretty good listener, but it’s hard to get any sort of opinion from her in when it’s about IT subjects. I’ll give her one more month for that :).

So, after 45 minutes computer prompted me for restart. When I did so and it arrived at boot menu screen what a surprise. SEVEN different options for booting Ubuntu, with three different kernels. Oh well, I choose default, the one that was preselected. What a surprise when it took about 5 minutes to boot (normally about 30 seconds). When it finally manage it only screen resolution I could get in either Gnome or KDE was 800X600. RIDICOULOUS.

Poking around for 30 minutes with Oliwia (my daughter) hanging on the other side of my arm with face expression telling me “See old man, BIG MISTAKE” I realised it was a BIG MISTAKE.

Back to Windowz days for some time. I don’t have the patient to fix this sort of problems anymore. Will wait for stable release of Ubuntu Hardy Heron and then put a clean install.

On the other hand I found a nice piece of software for getting an access to ext2/ext3 partitions under XP. It is called Linux Reader.

Summary

Don’t do system upgrade on Beta and Development version of software.

I hope uncle Greg teaches you kids a lesson. It’s better to learn at someone else’s mistakes.

Gregster