Google Cloud Platform or Amazon Web Services? Choosing the cloud provider for an application server is one of the major challenges in app development. This choice is usually done at the beginning of the project and then it greatly affects the rest of the development, support, and maintenance processes. You need to choose wisely, as migrating the whole infrastructure is no easy task.
In this post, we will try to compare the main features of the services that we can expect from both cloud giants and see what each of them has to offer.
Why do we ever consider using cloud services to host our applications? Once we answer this question, it will be easier to see the criteria that we should compare when choosing the cloud service provider to host our application backend.
What do we need from a cloud service?
When we are about to launch our backend platform in a cloud, we usually check some of the key characteristics that will, to a large extent, define our infrastructure performance.
The computing capacity is usually judged by the number of cores, or virtual cores (vCPUs), in our case. The larger the number the faster and more efficient the server is going to be. Multiple cores allow running multiple processes simultaneously without slowing or blocking the entire system.
Another parameter that we need to consider in the context of computing capacity is the RAM size. It also affects the server performance, as a larger RAM allows supporting more simultaneous processes and data exchange flows.
Let’s see what AWS and GCP have in regards to computing capacity.
The largest virtual machine AWS has 128 cores, or vCPUs, and 3904 Gb RAM. GCP’s maximum is even higher – 160 vCPUs and 3844 Gb RAM. Obviously, both providers can set up some truly powerful virtual machines.
Of course, you would not need the largest machines on every occasion, as in most cases you are going to be perfectly OK with medium computing capacities. At the same time, it is nice to know that you have options for some heavy-duty computing.
The importance of storage volumes in a cloud server cannot be underestimated. When it comes to storage, size is not the only thing that matters – although it does matter. In addition to the storage size, we also need to take into account the speed of read and write operations and the ability to process high loads.
Let’s compare storage options in AWS and GCP.
AWS offers two main types of storage – SSD and HDD. In their turn, SSD can be general purpose SSD with the size of 1 Gb to 16 Tb, or Provisioned IOPS SSD with the size of 4 GB – 16 Tb. Provisioned IOPS SSDs are better suited for high workloads and extremely mission-critical use cases, such as database operations.
HDDs can be 500 Gb – 16 Tb in volume and are a recommended option for high throughput processes, for instance, streaming.
GCP offers both SSDs and HDDs up to 64Gb that have high performance, speed, and throughput.
Cloud providers offer not only virtual computing capacities that you can use as you see fit but also various services that also run in the cloud. For example, you can have a containerization or database function that is already set up in the cloud.
AWS has more than 200 such services where you can find mostly anything that you need to build an app and run it. There is, for example, Amazon DynamoDB – a database service, Amazon S3 – a storage service, Amazon Route 53 – a DNS service, and dozens more.
GCP offers a choice of 50+ services. It also has the basic services, such as a database service (Google Cloud Datastore), a containerization service (Google Kubernetes Engine), a DNS service (Google Cloud DNS), and a lot more.
Security is always critical, and in this matter both cloud platforms match each other stride for stride. Both AWS and GCP use proper protection mechanisms that can secure the users’ data:
- 256-bit AES encryption
- Compliance with the requirements of security certifications, such as ISO, PCI, HIPAA, etc.
- Identity and access management including MFA
Both GCP and AWS apply the pay-as-you-go billing model when you are charged only for the actual cloud capacities that you have consumed. You can have a server for as much time as you need and only pay for what you used. Both use per second billing which means exactly that – your consumption is billed in seconds of your actual cloud usage.
It is not easy to compare the costs of a GCP and AWS virtual server, as there are too many different factors to be taken into account. Both platforms offer pricing calculators where you can estimate the cost of a virtual instance of a certain configuration – Google Cloud Platform Pricing Calculator and Amazon Simple Monthly Calculator.
Both GCP and AWS have free trial options as well as an “always free” plan including a limited number of services. However, the “always free” plans can hardly be an optimal choice for a backend server for your application.
Which cloud provider to choose?
If you are looking here for a definite answer, we might disappoint you. Both Amazon Web Services and Google Cloud Platform show great performance and provide adequate security, thus, can be optimal platforms for hosting your servers. We’ve made this comparison to see their main features and to show that both AWS and GCP are rightfully considered leaders in the cloud services sector.
At QuickBlox we’ve been using AWS as our cloud provider for quite a while. Some time later, though, we added GCP to the list of platforms where we host our products.
It’s a no-brainer that AWS is the number-one choice for the majority of users. With the scores of services, great flexibility, considerable experience, and extended official and non-official documentation all around the Internet, it can hardly be otherwise. GCP, though being a runner-up here, is quickly gaining momentum and may soon be expected to show the same reliable performance and security as AWS.