Amazon EC2 vs Heroku vs PythonAnywhere

Need advice about which tool to choose?Ask the StackShare community!

Amazon EC2

47.6K
35.2K
+ 1
2.5K
Heroku

25.3K
20.1K
+ 1
3.2K
PythonAnywhere

93
291
+ 1
64

Amazon EC2 vs Heroku vs PythonAnywhere: What are the differences?

  1. Pricing: Amazon EC2 utilizes a pay-as-you-go pricing model, where you are charged based on usage. Heroku, on the other hand, offers a simplified pricing structure with tiered plans. PythonAnywhere has free and paid plans available, making it more accessible for developers on a budget.

  2. Customization: Amazon EC2 provides a high level of customization, allowing users to configure their virtual servers for specific needs. Heroku, on the other hand, abstracts much of the infrastructure management, limiting the level of customization available. PythonAnywhere offers a balance between the two, providing some customization options while maintaining ease of use.

  3. Scalability: Amazon EC2 is known for its scalability, allowing users to easily adjust resources based on demand. Heroku provides automated scaling options but may not offer the same level of control as Amazon EC2. PythonAnywhere is designed for smaller applications and may not provide the same scalability options as the other two platforms.

  4. Supported Technologies: Amazon EC2 supports a wide range of programming languages and technologies, making it versatile for various applications. Heroku is optimized for Ruby on Rails and Node.js but supports other languages as well. PythonAnywhere, as the name suggests, is specialized for Python applications, offering built-in support and tools for Python development.

  5. Deployment Process: Heroku simplifies the deployment process with git push commands, making it easy to update applications. Amazon EC2 requires more manual configuration for deployment, but offers more control over the process. PythonAnywhere streamlines deployment for Python applications, simplifying the process for developers.

  6. Monitoring and Management: Amazon EC2 provides extensive monitoring and management tools for tracking performance and managing instances. Heroku has built-in logging and monitoring features, but may not offer the same level of customization as Amazon EC2. PythonAnywhere offers basic monitoring tools for tracking resource usage and logs.

In Summary, Amazon EC2 offers advanced customization and scalability, Heroku simplifies deployment and pricing, while PythonAnywhere is tailored for Python applications with a balance of customization and ease of use.

Decisions about Amazon EC2, Heroku, and PythonAnywhere
Daniel Quinn
Senior Developer at Workfinder · | 5 upvotes · 6.8K views

I host my stuff with Hetzner in large part because their tools are straighforward and easy to use and they're based in a country whose laws respect privacy.

If you're hosting with a company that's US-based, you have to worry about their laws affecting your site, which isn't an acceptable requirement in my opinion.

See more
Jerome/Zen Quah
Shared insights
on
Amazon EC2Amazon EC2DigitalOceanDigitalOcean

DigitalOcean was where I began; its USD5/month is extremely competitive and the overall experience as highly user-friendly.

However, their offerings were lacking and integrating with other resources I had on AWS was getting more costly (due to transfer costs on AWS). Eventually I moved the entire project off DO's Droplets and onto AWS's EC2.

One may initially find the cost (w/o free tier) and interface of AWS daunting however with good planning you can achieve highly cost-efficient systems with savings plans, spot instances, etcetera.

Do not dive into AWS head-first! Seriously, don't. Stand back and read pricing documentation thoroughly. You can, not to the fault of AWS, easily go way overbudget. Your first action upon getting your AWS account should be to set up billing alarms for estimated and current bill totals.

See more
Craig Finch
Principal Consultant at Rootwork InfoTech · | 6 upvotes · 183.8K views

We first selected Google Cloud Platform about five years ago, because HIPAA compliance was significantly cheaper and easier on Google compared to AWS. We have stayed with Google Cloud because it provides an excellent command line tool for managing resources, and every resource has a well-designed, well-documented API. SDKs for most of these APIs are available for many popular languages. I have never worked with a cloud platform that's so amenable to automation. Google is also ahead of its competitors in Kubernetes support.

See more
Stephen Fox
Artificial Intelligence Fellow · | 2 upvotes · 186.9K views

GCE is much more user friendly than EC2, though Amazon has come a very long way since the early days (pre-2010's). This can be seen in how easy it is to edit the storage attached to an instance in GCE: it's under the instance details and is edited inline. In AWS you have to click the instance > click the storage block device (new screen) > click the edit option (new modal) > resize the volume > confirm (new model) then wait a very long time. Google's is nearly instant.

  • In both cases, the instance much be shut down.

There also the preference between "user burden-of-security" and automatic security: AWS goes for the former, GCE the latter.

See more

Most bioinformatics shops nowadays are hosting on AWS or Azure, since they have HIPAA tiers and offer enterprise SLA contracts. Meanwhile Heroku hasn't historically supported HIPAA. Rackspace and Google Cloud would be other hosting providers we would consider, but we just don't get requests for them. So, we mostly focus on AWS and Azure support.

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Amazon EC2
Pros of Heroku
Pros of PythonAnywhere
  • 647
    Quick and reliable cloud servers
  • 515
    Scalability
  • 393
    Easy management
  • 277
    Low cost
  • 271
    Auto-scaling
  • 89
    Market leader
  • 80
    Backed by amazon
  • 79
    Reliable
  • 67
    Free tier
  • 58
    Easy management, scalability
  • 13
    Flexible
  • 10
    Easy to Start
  • 9
    Elastic
  • 9
    Web-scale
  • 9
    Widely used
  • 7
    Node.js API
  • 5
    Industry Standard
  • 4
    Lots of configuration options
  • 2
    GPU instances
  • 1
    Simpler to understand and learn
  • 1
    Extremely simple to use
  • 1
    Amazing for individuals
  • 1
    All the Open Source CLI tools you could want.
  • 703
    Easy deployment
  • 459
    Free for side projects
  • 374
    Huge time-saver
  • 348
    Simple scaling
  • 261
    Low devops skills required
  • 190
    Easy setup
  • 174
    Add-ons for almost everything
  • 153
    Beginner friendly
  • 150
    Better for startups
  • 133
    Low learning curve
  • 48
    Postgres hosting
  • 41
    Easy to add collaborators
  • 30
    Faster development
  • 24
    Awesome documentation
  • 19
    Simple rollback
  • 19
    Focus on product, not deployment
  • 15
    Natural companion for rails development
  • 15
    Easy integration
  • 12
    Great customer support
  • 8
    GitHub integration
  • 6
    Painless & well documented
  • 6
    No-ops
  • 4
    I love that they make it free to launch a side project
  • 4
    Free
  • 3
    Great UI
  • 3
    Just works
  • 2
    PostgreSQL forking and following
  • 2
    MySQL extension
  • 1
    Security
  • 1
    Able to host stuff good like Discord Bot
  • 0
    Sec
  • 15
    Web apps
  • 11
    Easy Setup
  • 8
    Great support
  • 8
    Shell access
  • 8
    Free plan
  • 7
    Super-easy to use
  • 5
    Libraries
  • 2
    Many things like Python are pre-installed

Sign up to add or upvote prosMake informed product decisions

Cons of Amazon EC2
Cons of Heroku
Cons of PythonAnywhere
  • 13
    Ui could use a lot of work
  • 6
    High learning curve when compared to PaaS
  • 3
    Extremely poor CPU performance
  • 27
    Super expensive
  • 9
    Not a whole lot of flexibility
  • 7
    No usable MySQL option
  • 7
    Storage
  • 5
    Low performance on free tier
  • 2
    24/7 support is $1,000 per month
  • 1
    No root access
  • 1
    Really small community

Sign up to add or upvote consMake informed product decisions

What is Amazon EC2?

It 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 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.

What is PythonAnywhere?

It's somewhat unique. A small PaaS that supports web apps (Python only) as well as scheduled jobs with shell access. It is an expensive way to tinker and run several small apps.

Need advice about which tool to choose?Ask the StackShare community!

What companies use Amazon EC2?
What companies use Heroku?
What companies use PythonAnywhere?

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

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

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

Blog Posts

Jan 26 2022 at 4:34AM

Pinterest

Amazon EC2RocksDBOpenTSDB+3
3
722
Dec 22 2020 at 9:26PM

Pinterest

Amazon EC2C langMemcached+4
10
2626
Sep 29 2020 at 7:36PM

WorkOS

PythonSlackG Suite+17
6
3049
What are some alternatives to Amazon EC2, Heroku, and PythonAnywhere?
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.
Amazon Web Services (AWS)
It is a comprehensive and broadly adopted cloud platform, offering over 200 fully featured services from data centers globally.
See all alternatives