Low Memory CF VPS: Railo

I wasn't going to expand on my decision to use Railo, despite the fact that at the time of writing we're still waiting for the first open source release. For me the choice was clear for a couple of reasons, but as these might not be immediately obvious I thought I'd explain my choice.

With the imminent release of Railo 3.1 there will be not one, but two options for proven, stable and robust open source CFML engines; Railo and OpenBD. For some time Railo has been widely recognised as the most performant of the major engines (Blue Dragon, ColdFusion, Railo), especially when using CFCs. It's footprint and method of deployment are similar to OpenBD, plus it includes excellent facilities for both individual website global server level administration. For these purely technical reasons Railo is a good fit for my requirements (I don't currently have any projects that I need to host that require Adobe specific functionality, nor do I have the budget or VPS memory required).

The second part of my decision is cultural. Before moving to ColdFusion I was a PHP developer. I've played with Linux on and off over the past few years, and I'd like to think I subscribe to the ideals of open source software. What initially attracted me to OSS was the "free as in beer" part, but as time moves on I'm increasingly compelled by the "free as in speech" attribute. Without getting too involved in community politics I feel that the partnering of Railo with JBoss is a very canny move, and the fact that there will no longer be a commercial core product indicates the teams commitment to open source. For this reason Railo also works for me on a "touchy-feely" level that OpenBD doesn't.

0 comments

Low Memory CF VPS: CentOS

This will probably be the shortest episode in my low memory VPS series, simply because it's unlikely that you'll get the option of Windows on a low-end account and your choice of Linux distribution is pretty much a matter of personal taste. When I signed up for my VPS account I had a choice of 3 Linux distros - CentOS 5, Debian 4 (Etch) or Fedora Core 9.

My first experience of Linux was a few years ago with Red Hat 4 and since then I've also dabbled with Ubuntu (which is Debian-based). While Debian seems to be the choice of the hip kids these days I'm just more familiar with the Red Hat distro that Centos is based on, so I went with that. Fedora is also based on Red Hat, but is generally considered less stable.

There are plenty of tutorials out there for setting up servers using both Debian/Ubuntu and CentOS/RHEL. Without wishing to over-simplify things the differences between the two largely come down to system paths and software management, although each has a distinct community and culture. For my requirements I might as well have made a selection based on the toss of a coin, as both make for great server operating systems!

The last point I'd like to make is that the default VPS CentOS install was minimal. I had to install some basic shell utilities manually, but this had the benefit that even after I'd installed these the base OS used less than 10mb of my allocated memory.

0 comments

Low Memory CF VPS: Pieces of the puzzle

I've been considering getting a VPS since OpenBD and Railo OS were announced last year, so a few weeks ago I finally signed up for a basic account with a barebone install of Linux to see if I could get a cheap CFML server up and running. Three weeks later I feel like I've learned a great deal. Although I've got some previous experience of Linux, which has surely helped, I've had to jump through a few hoops to get everything up and running properly.

After looking at various options I've settled on CentOS running Railo, Jetty and MySQL. As my entry level VPS account only has an allocated memory allowance of 384mb I've had to tweak things a little to get a functional setup. After a reboot the system shows idle memory usage of a little over 260mb, leaving approx 120mb free for running actual web apps. I've yet to do any major load or performance testing, but initial indications suggest that this setup will work fine for my needs (which basically consist of hosting this blog, parking a handful of domains and hosting a couple of small pet projects). Of course part of the beauty of VPS hosting is that it's possible to add more memory with a minimum of disruption, but for the purpose of this experiment I was curious to see exactly what I could squeeze into such limited resources.

I'm going to put together a mini series of posts outlining each of the elements of this setup - why I selected what I did and any special steps I had to take to get everything up and running on my minimal spec VPS. I'll cover my choice of Linux distro, JVM tweaks, web server, servlet container, CFML engine and database server (plus other essentials like email forwarding, url rewriting and anything else I come across).

 

0 comments