Need advice about which tool to choose?Ask the StackShare community!
Amazon EC2 vs Google Compute Engine: What are the differences?
Developers describe Amazon EC2 as "Scalable, pay-as-you-go compute capacity in the cloud". 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. On the other hand, Google Compute Engine is detailed as "Run large-scale workloads on virtual machines hosted on Google's infrastructure". Google Compute Engine is a service that provides virtual machines that run on Google infrastructure. Google Compute Engine offers scale, performance, and value that allows you to easily launch large compute clusters on Google's infrastructure. There are no upfront investments and you can run up to thousands of virtual CPUs on a system that has been designed from the ground up to be fast, and to offer strong consistency of performance.
Amazon EC2 and Google Compute Engine can be primarily classified as "Cloud Hosting" tools.
Some of the features offered by Amazon EC2 are:
- Elastic – Amazon EC2 enables you to increase or decrease capacity within minutes, not hours or days. You can commission one, hundreds or even thousands of server instances simultaneously.
- Completely Controlled – You have complete control of your instances. You have root access to each one, and you can interact with them as you would any machine.
- Flexible – You have the choice of multiple instance types, operating systems, and software packages. Amazon EC2 allows you to select a configuration of memory, CPU, instance storage, and the boot partition size that is optimal for your choice of operating system and application.
On the other hand, Google Compute Engine provides the following key features:
- High-performance virtual machines- Compute Engine’s Linux VMs are consistently performant, scalable, highly secure and reliable. Supported distros include Debian and CentOS. You can choose from micro-VMs to large instances.
- Powered by Google’s global network- Create large compute clusters that benefit from strong and consistent cross-machine bandwidth. Connect to machines in other data centers and to other Google services using Google’s private global fiber network.
- (Really) Pay for what you use- Google bills in minute-level increments (with a 10-minute minimum charge), so you don’t pay for unused computing time.
"Quick and reliable cloud servers", "Scalability" and "Easy management" are the key factors why developers consider Amazon EC2; whereas "Backed by google", "Easy to scale" and "High-performance virtual machines" are the primary reasons why Google Compute Engine is favored.
According to the StackShare community, Amazon EC2 has a broader approval, being mentioned in 3580 company stacks & 1569 developers stacks; compared to Google Compute Engine, which is listed in 587 company stacks and 414 developer stacks.
Albeit restricted to only a few places worlwide compared to its peers in the cloud segment, I am yet to find another provider capable of delivering a score over 5000 (Geekbench) in a benchmark on a single CPU machine, and each machine costs $6 a month. For homelab and experienced users who don't need DBaaS or IaaC's, it's a pretty straightforward choice. A more comprehensive review of Vultr's HF machines can be found here.
Our company builds micro saas applications. Based on the application we decide whether to deploy it over one of our shared servers or on a dedicated server.
We decided to Lightsail over EC2.
Lightsail is a lightweight, simplified product offering that has a dramatically simplified console. The instances run in a special VPC, but this aspect is also provisioned automatically, and invisible in the console.
Lightsail supports optionally peering this hidden VPC with your default VPC in the same AWS region, allowing Lightsail instances to access services like EC2 and RDS in the default VPC within the same AWS account.
Bandwidth is unlimited, but of course free bandwidth is not -- however, Lightsail instances do include a significant monthly bandwidth allowance before any bandwidth-related charges apply.
It has predictable pricing with no surprises at the end.
The flexibility of EC2 leads inevitably to complexity. Whereas for Lighsail there is virtually no learning curve, here. You don't even technically need to know how to use SSH with a private key -- the Lightsail console even has a built-in SSH client -- but there is no requirement that you use it. You can access these instances normally, with a standard SSH client.
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.
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.
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.
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.
Pros of Amazon EC2
- Quick and reliable cloud servers647
- Scalability515
- Easy management393
- Low cost277
- Auto-scaling270
- Market leader89
- Backed by amazon80
- Reliable79
- Free tier67
- Easy management, scalability58
- Flexible13
- Easy to Start10
- Widely used9
- Web-scale9
- Elastic9
- Node.js API7
- Industry Standard5
- Lots of configuration options4
- GPU instances2
- Extremely simple to use1
- Amazing for individuals1
- All the Open Source CLI tools you could want.1
- Simpler to understand and learn1
Pros of Google Compute Engine
- Backed by google87
- Easy to scale79
- High-performance virtual machines75
- Performance58
- Fast and easy provisioning52
- Load balancing15
- Compliance and security12
- Kubernetes9
- GitHub Integration8
- Consistency7
- Good documentation3
- One Click Setup Options3
- Free $300 credit (12 months)3
- Ease of Use and GitHub support2
- Great integration and product support2
- Escort2
- Integration with mobile notification services1
- Easy Snapshot and Backup feature1
- Low cost1
- Support many OS1
- Very Reliable1
- Nice UI1
Sign up to add or upvote prosMake informed product decisions
Cons of Amazon EC2
- Ui could use a lot of work13
- High learning curve when compared to PaaS6
- Extremely poor CPU performance3