When comparing Heroku vs Linode, the Slant community recommends Heroku for most people. In the question“What are the best hosting providers for a Python web application?” Heroku is ranked 3rd while Linode is ranked 5th. The most important reason people chose Heroku is:
Getting started with Heroku is very easy. It's a very straightforward procedure and a beginner can set up their first app in two minutes. Often it's just a matter of a couple of `git` commands and it's all set up and running. The official Heroku [docmentation](https://devcenter.heroku.com/) also helps a lot.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Easy to start with
Getting started with Heroku is very easy. It's a very straightforward procedure and a beginner can set up their first app in two minutes. Often it's just a matter of a couple of git
commands and it's all set up and running. The official Heroku docmentation also helps a lot.
Pro Excellent error logs
When your deploy fails you see a legitimate error log. Many of the other PaaS give you nondescript messages and debugging is a pain. Debugging Heroku wins by comparison.
Pro Add-ons let you easily add features and technologies
Heroku has a vast list of plugins and services that can be added to an instance. These plugins cover things from databases to email systems. This remove the task of having to install services and setting them up manually. Heroku does it all for you.
Pro Simple scaling
Heroku instances can easily be scaled up or down by increasing or decreasing the number of available dynos for that instance. This can be done through the CLI or through Heroku's web UI.
Pro Dedicated build servers
Heroku has dedicated servers for building app dependencies, to ensure that you won't have issues like "out of memory" errors when deploying your app.
Pro Mature
Heroku is one of the oldest PaaS providers. The fact that it's been around for such a long time means that it had a lot of time to mature over the years. There's also a massive number of articles, guides and tutorials on Heroku out there for beginners and advanced users.
Pro Free option
Heroku offers a free tier which contains a single dyno instance. It offers 512MB of memory and 100MB swap space.
Pro Excellent support
Linode's support is amazing. Tickets are usually answered within minutes, if there's a network or hardware issue it's usually resolved before anyone even notices.
Pro Gives you the chance to fix problems without relying on support
If you mess things up in your Linode instance, for example with the filesystem or boot configuration, Linode allows you to run a recovery ISO so you can try and fix things yourself without relying on Linode's support team.
Pro Speed
Their VPSs are very fast.
Pro Allows you to do things that usually can only be done if you have access to the hardware
Linode allows you to create memory partitions and copy or move them around. Furthermore, it even lets you reboot your instance with smaller RAM in order to simulate how your application would act if your Linode instance gets downgraded.
Pro Comprehensive, well documented API
The API gives access to nodes, nodebalancers, stackscripts, DNS, and accounts.
Pro Provides SDKs for several languages
SDKs are available for Python, Perl, PHP, Ruby, Java, and Node.js.
Pro Stack scripts
Stack scripts gives you the chance to build a completely custom Linode stack with multiple custom features and options all run automatically and set up.
Pro New Cloud Beta user interface
A new user interface is under development which will still keep the same level of power Linode offers but with a cleaner interface. Showing forward thinking and continued improvement.
Cons
Con Constrained by addons
If you want to fully customize your production environment, then Heroku can be seriously constraining. Installing libraries or services can not be done unless there is already a Heroku plugin for it.
Con Further deployments are slow
While starting with Heroku is fast and easy, and the first few deployments are actually very fast, larger applications tend to have slower deployments. It takes some time for the dynos to restart and while they are restarting the application is completely offline. Which means that you can lose precious seconds of application time.
Con Really expensive
Heroku starts getting really expensive once you leave that free tier. It's not just the bare Heroku service that is costly, the addons as well are very pricey.
Con Backups have become unreliable
I've been a Linode customer for 10+ years, but over the past 3+ years their backups have become unreliable, which is unacceptable for a paid extra to the service. I've had multiple issues with backups failing, and restoring from a backup has caused my VPS to fail to deliver website content for reasons neither I nor Linode support could figure out. In the end, I just had to rebuild the server from scratch with a personal backup.
Con Not really suitable if you have a very heavy CPU application
They'll cap your usage if you go above 80% for a sustained period - even on very large expensive boxes (if you use Load Balancers offered, this can be mitigated).
Con For more advanced users
Can be an issue for those not used to setting up their own server. Managed services are really expensive if help is needed.
Con No self-help migrating option
If you want to migrate to another hosting solution from Linode, you can't do it by yourself. You have to open a support ticket.
Con Treats customer as a liability
Many malpractices in the name of machine abuse. Their machines get abused with just 10% steady cpu utilization.