Heroku vs Microsoft Azure: What are the differences?
Heroku: Build, deliver, monitor and scale web apps and APIs with a trail blazing developer experience. Heroku is a cloud application platform – a new way of building and deploying web apps. Heroku lets app developers spend 100% of their time on their application code, not managing servers, deployment, ongoing operations, or scaling; Microsoft Azure: Integrated cloud services and infrastructure to support computing, database, analytics, mobile, and web scenarios. Azure is an open and flexible cloud platform that enables you to quickly build, deploy and manage applications across a global network of Microsoft-managed datacenters. You can build applications using any language, tool or framework. And you can integrate your public cloud applications with your existing IT environment.
Heroku can be classified as a tool in the "Platform as a Service" category, while Microsoft Azure is grouped under "Cloud Hosting".
Some of the features offered by Heroku are:
- Agile deployment for Ruby, Node.js, Clojure, Java, Python, Go and Scala.
- Run and scale any type of app.
- Total visibility across your entire app.
On the other hand, Microsoft Azure provides the following key features:
- Use your OS, language, database, tool
- Global datacenter footprint
- Enterprise Grade with up to a 99.95% monthly SLA
"Easy deployment", "Free for side projects" and "Huge time-saver" are the key factors why developers consider Heroku; whereas "Scales well and quite easy", "Can use .Net or open source tools" and "Startup friendly" are the primary reasons why Microsoft Azure is favored.
StackShare, Heroku, and SendGrid are some of the popular companies that use Heroku, whereas Microsoft Azure is used by Starbucks, Movielala, and Docplanner. Heroku has a broader approval, being mentioned in 1496 company stacks & 937 developers stacks; compared to Microsoft Azure, which is listed in 489 company stacks and 463 developer stacks.
What is Heroku?
What is Microsoft Azure?
Need advice about which tool to choose?Ask the StackShare community!
Sign up to add, upvote and see more prosMake informed product decisions
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
Windows Azure is more difficult to configure than some other cloud based technologies, however, it makes up for it with the incredible integrations and ease of development on mobile platforms (Android, iOS and of course Windows Phone).
The Azure Web Sites is a PaaS that is very easy to setup and is pretty powerful.
If you want VMs you can have them and even program when they come online.
There are tons of ways to use this service and there are a lot of free things you can get in order to try it out. The only downside is that you have to learn a new, although very powerful, platform.
I use Heroku, for almost any project of mine. Their free plan is awesome for testing, solo developers or your startup and its almost impossible to not cover you somehow. Adding an add on is a simple command away and I find it easy to use it both on my Windows PC or my Linux laptop. Their documentation, covers almost everything. In particular I have used Heroku for Spring, Django and AngularJS. I even find it easier to run my project on my local dev with foreman start, than ./manage.py runserver (for my django projects). There is no place like Heroku for the developer!
Can't beat the simplicity of deploying and managing apps, the pricing is a bit high, but you are paying for those streamlined tools. However, after several experiences of tracing issues back to Heroku's stack, not having visibility into what they are doing has prompted moving two applications off of it and on to other more transparent cloud solutions. Heroku is amazing for what it is, hosting for early stage products.
I've been using Heroku for 3 years now, they have grown super fast and each time they're improving their services. What I really like the most is how easily you can show to your client the advances on you project, it would take you maximum 15 minutes to configure two environments (Staging/Production). It is simply essential and fantastic!
I liked how easy this was to use and that I could create some proof of concepts without have to pay. The downside for NodeJS is remote debugging. Pretty much have to depend on logging where Azure allows remote debugging with Node Inspector.
Using Heroku takes away all the pains associated with managing compute and backing services. It may require a little extra optimisation and tweaks, but these constraints often make your app better anyway.
Not having to deal with servers is a huge win for us. There are certainly trade-offs (having to wait if the platform is down as opposed to being able to fix the issue), but we’re happy being on Heroku right now. Being able to focus 100% of our technical efforts on application code is immensely helpful.
Two dynos seems to be the sweet spot for our application. We can handle traffic spikes and get pretty consistent performance otherwise.
We have a total of four apps on Heroku: Legacy Leanstack, StackShare Prod, StackShare Staging, StackShare Dev. Protip: if you’re setting up multiple environments based on your prod environment, just run heroku fork app name. Super useful, it copies over your db, add-ons, and settings.
We have a develop branch on GitHub that we push to dev to test out, then if everything is cool we push it to staging and eventually prod. Hotfixes of course go straight to staging and then prod usually.
We use Microsoft Azure because many of our clients are already Azure for their private cloud. Additionally, Azure supports App Service Environments (ASE), which isolates the application resources and gives us a static IP for securely accessing external resources
Additionally, MSSQL supports columnstore tables which is critical for running fast analytics over large datasets
Heroku runs the web and background worker processes. Auto-deployments are triggered via GitHub commits and wait for the Buildkite test build to pass. Heroku pipelines with beta release phase execution (for automatically running database migrations) allowed for easy manual testing of big new releases. Web and worker logs are sent to Papertrail.
As much as I love AWS EC, I prefer Heroku for apps like this. Heroku has grown up around Rails and Ruby, massive set of add-ons that are usually one-click setup, and I once had to perform an emergency app scale-up a that I completed in seconds from my mobile phone whilst riding the Bangkok subway. Doesn't get much easier than that.
With its complimentary SSL (on *.herokuapp.com) we can test everything. Our dev branch is built and deployed out to Heroku. Testing happens out here. not production cause $20/mo is TOO much to pay for the ability to use my own SSL purchased elsewhere.
My favourite cloud with all the great tools - web apps, mobile apps, storages, easy tables, blobs, app insights, cosmos DB... I think it is really usable and ergonomic. Plus point for mobile app.
We currently host PRS and EARS on Azure as they are .Net apps, but we are currently porting these services to Scala and will be hosting them on Heroku with the other P2 SRX services.
Serviço utilizado para deploy de toda a infraestrutura do projeto. Colocamos todas as peças do serviço no azure, garantindo uma forma rápida e garantia de escalibilidade.