Heroku vs NodeJitsu vs Appfog

For the next few months, I’ll be working with the team at LocalRuckus, building a new Node.js API and application.  As a small shop with no dedicated Sys Admin or Dev Ops, its essential that we find Node.js hosting that is flexible, fast, and cost-effective.  I’ve been considering three major players in the Node.js hosting scene, Heroku, Nodejitsu, and Appfog.  There are some good comparisons out there (I especially like Daniel Saewitz’s article), but I wanted to share my 2 cents.

Value for Development

Heroku provides a great feature for development/sandbox apps – your first dyno is FREE.  Combine this with the starter Postgres package, and you can have a development version of you app up and running for $0/month.

Nodejitsu does not offer a free tier, so you are on the hook for paying for pet projects, etc.  That said, their pricing starts at $9/mo for a micro package, and scales up pretty gently from there.

Appfog provides a pretty great package for trying out an app.  You can provision your database, caching server, queue server, and application servers in a few clicks, all managed from one central dashboard.

Winner:  Appfog

Value for Production

Heroku pricing scales linearly with your traffic.  Using a simple slider, you can add new dynos to your application.  Each new dyno runs $35/mo, however, there is no commitment – you can scale up for brief spikes, and scale down if traffic subsides.

Nodejitsu and Appfog, on the other hand have fixed monthly prices.

Nodejitsu prices based on drones, which seem to offer 256MB RAM and processing power roughly equivalent to half a heroku dyno.

Appfog prices based on RAM, which creates a bit of a problem.  While 2GB of memory can be had for $20/mo, moving up to 4GB is a rather steep $100/mo.

Winner: Heroku

Deployment

Heroku – Deploy to a git repository

Appfog – Use the downloadable af tool to push updates

NodeJitsu – Use the jitsu tool or git integration.

Winner: Nodejitsu

Database

Heroku leverages expertise in Postgres, providing plans that scale with your application, including free database levels for getting started.  Production databases support 1TB of data, starting at $50/month.  If you prefer another database platform, Add-Ons are available for Redis, Mongo, Couchdb, ClearDB, JustOneDB, and Amazon RDS.

Nodejitsu continues to take a fairly minimalist approach, with no built-in database.  They provide Add-Ons for Mongo, Redis, and CouchDb.

Appfog allows you to use your service instances to host Redis, Mongo, Postgres, or MySql databases.  They also provide add-ons for Mongo and ClearDB.  The main knock here is that your database shares the processing and memory quotas with your other services, and I’m skeptical that such an approach could support a high traffic app.

Winner: Heroku. Production quality Postgres, with great Add-Ons for a variety of other databases.

Other Languages

Heroku Nodejitsu Appfog
  • Ruby
  • Java
  • Python
  • Clojure
  • Scala
  • Play
  • Php
    None
  • Ruby
  • Java
  • Python
  • Php

Tie: Appfog & Heroku. Appfog’s PHP support opens a lot of opportunities (such as hosting WordPress), however, Appfog seems to have trouble keeping their runtimes up to date. As of July 2013, Node.js was only up to version 8. Heroku provides good language options, and a serious commitment to keeping the runtimes up to date.

Other Considerations and Final Thoughts

An important consideration for many node apps is web socket support.  Nodejitsu has it, the others don’t.  If you need this feature, your choice is clear.  At this point, Heroku’s flexibility, large community, and great add-ons make it my go-to for applications, however, I think Appfog has put together a great offering, and I’m looking forward to using it more in the future.

Advertisements

8 thoughts on “Heroku vs NodeJitsu vs Appfog

  1. chrischang12 says:

    interesting + thorough post! having a big community is definitely a huge bonus. did you get a chance to evaluate their support?

  2. AJ says:

    Little known secret. Heroku does support PHP.

  3. Paul Vencill says:

    I don’t think all your “winner” choices are clear from the comments as to why they won. For example, what about the ‘jitsu’ tool makes Nodejitsu better for deployment than Heroku? Did you also take into account the ‘heroku’ tool, which gives you limited cli access to your app? Likewise, you commented on pricing for Development in your Value for Development paragraph for both Heroku and Nodejitsu, but you didn’t mention it for AppFog before declaring them ‘winner’.

    I don’t necessarily disagree with your observations, I would just be curious to hear a bit more meat on some of those choices.

    • adamnengland says:

      Paul – Thanks for weighing in. The post certainly doesn’t contain all the pros/cons, just a sampling. Here’s a little more background on my choices.

      Deployment – In this case, I was mostly just referring to code deployment. Heroku works solely using git for deployments. Nodejitsu supports git deployments, or deployments using the jitsu tool (if git isn’t your thing). I’m a huge Heroku user (multiple production applications), but strictly for code deployment, I think jitsu is a little more flexible. To my knowledge, the ‘heroku’ CLI is for management of the app, not code deployment (I’d love to hear if this is no longer true)

      Value for Development – Regarding Appfog, the pricing and flexibility gave them the win for me. $0 to get in the door and deploy multiple apps is great for development. Big caveat is the fact that you can’t use any custom domains at the $0 price point.

      Thanks again for reading – I’d love to do a followup to this in a few months. The PAAS market is changing so rapidly, the best option for a particular app changes month to month.

  4. Kykle R. says:

    I’ve been a customer of both and found nodejitsu to have terrible service. My site would be down, I’d find customer service in IRC, and they’d tell me they’re rolling out some new feature and things should stabilize in a few hours… This happened at least four times. It’s as if the company is run by software developers with almost no ops experience at all. Stay away.

    • Kevin Prell says:

      Exact same experience as Kykle R. on NodeJitsu!

      My site would go down. One time when they were supposedly rolling out changes just to their billing! Sometimes my site would re-route to a site hosted on their service called portal.io (isn’t that wonderful?)

      No outage notifications. No ETA for deploys, when they became unavailable. Awful service ops.

      Stay far far away from Nodejitsu!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: