Grails apps and cloud hosting

Posted by: on Jan 24, 2009 | 8 Comments

I am currently developing a web application and I’m researching the hosting options for it. My gut feeling – resulting from having zero startup cash and the self-deluding belief that the service will take off – is that a cloud based solution is the way to go.

So what are the options for Grails application cloud hosting? Currently I have found the following three options (other than rolling your own direct to Amazon EC2). I will be as brief as possible. Please do contact me with details of other services and/or corrections to this info.

  • Mor.ph AppSpace / AppCloud (beta)
    Based on EC2? AppCloud beta YES, AppSpace not sure. Web-based control panel? YES. Pricing published? YES. Grails plugin? YES (Google code one was broken so I wrote a new one). Have I tried the service? YES. Was it a good experience: YES although currently we have some session/class load error problems support are still investigating.
  • Stax
    Based on EC2? YES. Web-based control panel? YES. Pricing published? NO. Grails plugin? NO. Have I tried the service? NO. Was it a good experience: N/A. Am talking with Spike Washburn about putting together a Grails plugin with them, and will probably try the service soon with their SDK, although it is unclear whether it will be pitched with a suitable level of support for commercial services (rather than test / prototyping / Java community hosting)
  • Cloudtools / Cloud Foundry
    Based on EC2? YES. Web-based control panel? NO. Pricing published? EC2 pricing for self administered with Cloudtools. Cloud Foundry management costs not published yet. Grails plugin? YES, but not in Grails pl. Have I tried the service? NO. Was it a good experience: N/A. Am talking with Spike Washburn from Stax about putting together a Grails plugin with them, and will try the service soon, although it is unclear whether it will be pitched with a suitable level of support for commercial services (rather than test / prototyping / Java community hosting)

So there are a few options out there at the moment. Currently – my class loading problems aside – Mor.ph is the easiest to get running, its so easy it is ridiculous. However at the moment they don’t seem to have realtime monitoring of the servers which Stax seems to have, and performance on AppSpace free test setup seemed poor (worse than my MacBook, with a single user). The Mor.ph AppCloud beta looks like it could be better, but the currently published pricing seems very high with a minimum of $1500 per month for 5 virtual boxes.

Cloudtools looks interesting, but I’m personally looking for something managed / with a web based UI. I also have concerns about the lack of information available about database performance generally with this kind of hosting. Providers still need to refine the information they provide and increase the level of detail if they want to attract commercial services. Hosting is a crucial decision to make, and if you make it without enough information if you are successful, it could kill your business if you hit a block you didn’t realise existed.

I’m sure the marketplace will expand and mature quite quickly now, but the choices are far from clear at the moment if you want a low-hassle commercial deployment.

8 Comments

  1. Eric Pederson
    January 24, 2009

    We are using Rightscale and I’m very happy with it so far. Rightscale provides powerful web-based management and monitoring tools on top of AWS. It is $500 per month (on top of the Amazon Web Services charges). There are pre-built “server templates” for Tomcat, PHP and Rails. Their server template concept is much more flexible than packaged AMIs. You could clone their Tomcat server template and tweak it for a Grails app easily.

    Reply
  2. j pimmel
    January 24, 2009

    I had a good old play with Cloudtools some time back and while itself doesn’t provide a web based manage GUI (thats currently being developed by them) it suggests you use the ElasticFox plugin, possibly one of the more “holy cow, you can do all that” Firefox plugins I have had the pleasure of tinkering with.

    One of the very appealing things I like about Cloudtools was how when you did deploys and then subsequent re-deploys, it had some smarts to only update the deltas thus avoiding the problem of large Grails WARs always being sent up the wire each time. The result, very fast deployment.

    Look forward to hearing more about where this all goes for you

    Reply
  3. Mike
    January 24, 2009

    Hi Marc,

    I’m currently working on a Grails project where we are going live on Amazon EC2 with Rightscale in mid-March. All of our environments outside of local have been on EC2, and it’s worked out quite nicely. Though we are paying the $500/mo for Rightscale, I would consider the free version of Rightscale or just go with straight EC2 too. The management tools and various plugins are getter better. If you can find a base OS install/stack bundle there isn’t much of a ramp up time. It’s a little pricey compared to typical VPS hosting running about ~70/mo for a small instance running 24/7. For us the benefit of no contracts, the ability to run as many instances whenever we want and only pay per hour is huge.

    Would be happy to compare notes further.
    Mike

    Reply
  4. Matt Passell
    January 26, 2009

    Marc, when evaluating Cloudtools, did you try to get in touch with Chris Richardson (the founder/lead)? I spoke with him a fair amount about Cloudtools at the last JavaOne. If you have any more questions about it, I bet he’d be quite helpful.

    Reply
  5. Robert
    January 27, 2009

    Have you looked at a non-cloud solution? I use Linode and they allow you to have private IPs for clustering amongst servers in a given datacenter. I too wanted to go the AWS route, but it was cost prohibitive for me. For the same amount of money ($75 a month) I can get an equivalent Linode without having to pay for the bandwidth on top of that. That $80 linode gives me 800gb of transfer.

    Start with a linode 360 (360mb ram) for $20 a month and you can work your way up to a 2880 for $160 a month, or any combination of servers. Assuming they have availability, new servers are allocated fairly quickly and upgrading is so painless it is almost a joke. Make a request, they get it ready, you reboot and poof, bigger and badder box.

    However, for the others, I’m not sure what a grails plugin would entail. afterall, a deployed grails app is just a war file. The session stuff can be a pain though unless you do sticky sessions or try to get terracotta working (no luck for me just yet, but still working on it).

    Reply
  6. guigouz
    January 30, 2009

    How about joyent.com ? they have quite a scalable architecture using opensolaris

    Reply
  7. Marc Palmer
    January 30, 2009

    Guigouz – hadn’t heard of joyent. I took a look but their service is not fully managed and support is extremely expensive!

    Reply
  8. Marc Palmer
    January 30, 2009

    The thing with all this is that managing the network infrastructure is completely unattractive. Something like Mor.ph means you don’t have to worry about anything, which is great. Their CLOUDS solution looks perfect – register for free and look at the clouds designer which runs in-browser – but the cost is way too high at the moment.

    Reply

Leave a Reply