Amazon EC2
Amazon EC2

14.2K
8.1K
2.5K
Firebase
Firebase

6.4K
4.5K
1.7K
Heroku
Heroku

7.3K
5K
3.1K
- No public GitHub repository available -
- No public GitHub repository available -
- No public GitHub repository available -

What is Amazon EC2?

Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides resizable compute capacity in the cloud. It is designed to make web-scale computing easier for developers.

What is Firebase?

Firebase is a cloud service designed to power real-time, collaborative applications. Simply add the Firebase library to your application to gain access to a shared data structure; any changes you make to that data are automatically synchronized with the Firebase cloud and with other clients within milliseconds.

What is Heroku?

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.

Want advice about which of these to choose?Ask the StackShare community!

Why do developers choose Amazon EC2?
Why do developers choose Firebase?
Why do developers choose Heroku?

Sign up to add, upvote and see more prosMake informed product decisions

What are the cons of using Amazon EC2?
What are the cons of using Firebase?
What are the cons of using Heroku?

Sign up to add, upvote and see more consMake informed product decisions

What companies use Amazon EC2?
What companies use Firebase?
What companies use Heroku?

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Amazon EC2?
What tools integrate with Firebase?
What tools integrate with Heroku?

Sign up to get full access to all the tool integrationsMake informed product decisions

What are some alternatives to Amazon EC2, Firebase, and Heroku?
Amazon LightSail
Everything you need to jumpstart your project on AWS—compute, storage, and networking—for a low, predictable price. Launch a virtual private server with just a few clicks.
Amazon S3
Amazon Simple Storage Service provides a fully redundant data storage infrastructure for storing and retrieving any amount of data, at any time, from anywhere on the web
Amazon EC2 Container Service
Amazon EC2 Container Service lets you launch and stop container-enabled applications with simple API calls, allows you to query the state of your cluster from a centralized service, and gives you access to many familiar Amazon EC2 features like security groups, EBS volumes and IAM roles.
Beanstalk
A single process to commit code, review with the team, and deploy the final result to your customers.
Microsoft Azure
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.
See all alternatives
Decisions about Amazon EC2, Firebase, and Heroku
Tim Specht
Tim Specht
‎Co-Founder and CTO at Dubsmash · | 14 upvotes · 29.7K views
atDubsmashDubsmash
Kubernetes
Amazon EC2
Heroku
Python
#ContainerTools
#PlatformAsAService

Since we deployed our very first lines of Python code more than 2 years ago we are happy users of Heroku. It lets us focus on building features rather than maintaining infrastructure, has super-easy scaling capabilities, and the support team is always happy to help (in the rare case you need them).

We played with the thought of moving our computational needs over to barebone Amazon EC2 instances or a container-management solution like Kubernetes a couple of times, but the added costs of maintaining this architecture and the ease-of-use of Heroku have kept us from moving forward so far.

Running independent services for different needs of our features gives us the flexibility to choose whatever data storage is best for the given task.

#PlatformAsAService #ContainerTools

See more
Tim Nolet
Tim Nolet
Founder, Engineer & Dishwasher at Checkly · | 6 upvotes · 6K views
atChecklyHQChecklyHQ
Amazon Route 53
JavaScript
Vue.js
Node.js
Heroku
Amazon EC2
Let's Encrypt
#SAAS

Let's Encrypt Amazon EC2 Heroku Node.js Vue.js JavaScript

We recently went through building and setting up free SSL for custom domains for our #SaaS customers. This feature is used for hosting public status pages and dashboards under the customers' own domain name.

We are in the #Node.js, #AWS and #Heroku world, but most of the things we learned are applicable to other stacks too.

The post linked goes into three things:

  1. Configuring the Let's Encrypt / ACME client called Greenlock.
  2. Getting DNS right on Amazon Route 53
  3. Actually determining what content to serve based on hostname.

All seem pretty straightforward, but there are gotcha's at each step.

Hope this helps other budding SaaS operators or ops peeps that need this functionality.

See more
Interest over time
Reviews of Amazon EC2, Firebase, and Heroku
Review ofAmazon EC2Amazon EC2

A VPS gives the full access that I need, because most of what I do has complex integrations and there is plenty of legacy - very stable, highly tuned code developed over two decades - that I carry with me. My use is also limited to during development, so there is no point going for a full server.

Amazon EC2 is a VPS, except it is cheaper.

Additionally, I used to previously take the code developed on my VPS and deploy it to whatever server the client brought.

With Amazon EC2 the deployment is already done. All that remains it to scale up, add other products like dns, mail, storage and so on, and change the billing so that the client gets invoiced. That makes the process that much more predictable and seamless, and the end result much more stable.

Review ofHerokuHeroku

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!

Review ofHerokuHeroku

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.

Review ofAmazon EC2Amazon EC2

Just started using EC2 myself, but it was the platform used by my previous employer, as well. They are getting easier to use, dashboard improvements over time were well done. Responded fast to outages. They offer a limited free tier which is perfect for my current project, allowing me time to build it to the point where I will need a paid solution. Overall, I'm liking it so far.

Review ofHerokuHeroku

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!

Review ofHerokuHeroku

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.

Review ofHerokuHeroku

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.

Review ofFirebaseFirebase

Firebase is great, cheap and very flexible. Their docs are very helpful and so is the customer support, but the one thing that is so awesome about firebase is that everything is done in realtime!

Review ofFirebaseFirebase

We were looking for a solution to find out about all the errors our customers experienced but never informed us about.

How developers use Amazon EC2, Firebase, and Heroku
Avatar of StackShare
StackShare uses HerokuHeroku

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.

Avatar of imgur
imgur uses Amazon EC2Amazon EC2

About a year and a half ago (written June 2013) we moved from dedicated servers over to AWS. Thanks to AWS, we no longer have to think on a server level. Instead, we think of everything as a cluster of instances, and an instance is essentially a virtual server where we don’t have to worry about the hardware. It’s a relief to not have to worry about the hardware behind the instances.

The clusters we have are: WWW, API, Upload, HAProxy, HBase, MySQL, Memcached, Redis, and ElasticSearch, for an average total of 80 instances. Each cluster handles the job that its name describes, all working together for the common goal of giving you your daily (hourly?) dose of image entertainment.

Below is a diagram of how they all work together:

http://i.imgur.com/GiBQsmf.png

Avatar of Instacart
Instacart uses FirebaseFirebase

We use it for a few things. We use it internally for a few dashboards because it’s actually really nice to have real-time dashboard data with Firebase. We also use it extensively for live order updating. For example, when a shopper is picking your items, you'll be able to go on your order screen. There will be live showing like found or not found or whatever. You'll have live position updating of your shopper on the map. You will have live information of the status of the order like “Nicole is now picking up your order,” and all these kind of things, so you don’t have to reload the page or pull or anything. Just live updates happen natively through Firebase API, which is nice.

Avatar of Instacart
Instacart uses FirebaseFirebase

We use it for a few things. We use it internally for a few dashboards because it’s actually really nice to have real-time dashboard data with Firebase. We also use it extensively for live order updating. For example, when a shopper is picking your items, you'll be able to go on your order screen. There will be live showing like found or not found or whatever. You'll have live position updating of your shopper on the map. You will have live information of the status of the order like “Nicole is now picking up your order,” and all these kind of things, so you don’t have to reload the page or pull or anything. Just live updates happen natively through Firebase API, which is nice.

Avatar of ttandon
ttandon uses FirebaseFirebase

Used for storing results of users (malaria predictions) and displaying to user in the app. Although the realtime aspect wasn't huge in this project, it was much quicker to push data elements for each user as firebase elements since they were purely numerical and very small. And again, the idea of familiarity - I've worked with Firebase at previous hackathons, so no need to spend time going through docs, just straight to the coding.

Avatar of StackShare
StackShare uses HerokuHeroku

We keep the Metrics tab open while we load test, and hit refresh to see what’s going on: heroku metric

I would expect the graphs to expand with some sort of detail, but that’s not the case. So these metrics aren’t very useful. The logs are far more useful, so we just keep the tail open while we test.

Avatar of Instacart
Instacart uses Amazon EC2Amazon EC2

We liked a lot of things about Heroku. We loved the build packs, and we still in fact use Heroku build packs, but we were frustrated by lack of control about a lot of things. It’s nice to own the complete stack, or rather as far down as AWS goes. It gave us a lot of flexibility and functionality that we didn’t have before. We use a lot of Amazon technology.

Avatar of Tim Lucas
Tim Lucas uses HerokuHeroku

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.

Avatar of Jeff Flynn
Jeff Flynn uses HerokuHeroku

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.

Avatar of Matt Welke
Matt Welke uses HerokuHeroku

Used for proofs of concept and personal projects where I want to remain in a free tier (as opposed to a service like DigitalOcean), and application state must outlive an HTTP request/response cycle.

Heroku Postgres sometimes used as a free tier PostgreSQL managed database linked to non-Heroku apps, for example AWS Lambda.

Avatar of NewCraft
NewCraft uses FirebaseFirebase

Firebase let's us iterate quickly. We've used the Realtime Database to build rich UX features– like push notifications– fast. Likewise, Firebase Authentication and Cloud Functions save us from having to rebuild redundant server infrastructure. Even though Firebase can get pricey, we've saved money in developer time.

Avatar of Volkan Özçelik
Volkan Özçelik uses Amazon EC2Amazon EC2

I like containers and all, but for zerotoherojs.com I am a one-man band, who also works full time. I don’t have any (dev)ops budget, and therefore I need the reliability and uptime of an actual virtual machine.

That’s where AWS EC2 comes in handy.

Avatar of jasonmjohnson
jasonmjohnson uses Amazon EC2Amazon EC2

Docker containers will be hosted and run on a single Amazon EC2 instance. This will likely be the t2.small or t2.medium instance type as listed here: https://aws.amazon.com/ec2/instance-types/

Avatar of Jeff Flynn
Jeff Flynn uses Amazon EC2Amazon EC2

Because servers. Lots of them. Lots of configurations. Great for mission-specific functions. Video encoding, data aggregation, dedicated processing, mission-critical data stores. Anything you can't hang off your Heroku environment.

Avatar of Addo
Addo uses FirebaseFirebase

Still in development, but we will soon (January 2016) be releasing a version that uses Firebase to keep the front end up to date in real time. Certain data are synchronised across RDS and Firebase to optimize the user experience.

How much does Amazon EC2 cost?
How much does Firebase cost?
How much does Heroku cost?