Optimally utilizing the cloud platform with the right service mix and combination of cloud Service provider will not only result in big savings but also augment overall performance of the application.
Considering the benefits, there is an extended list of cloud hosting providers available to us today. However, some of the globally acclaimed names include:
- Amazon Web Services (AWS) -- IaaS, PaaS, SaaS
- Google Cloud Service (GCS) -- IaaS, PaaS, SaaS
- Microsoft Azure Cloud (Azure) -- IaaS, PaaS, SaaS
- Linode -- IaaS
- Rackspace -- IaaS
How to Choose a Cloud Service Provider: A Few Evaluation Factors
While choosing one or a mix of cloud service providers, it is important to carefully evaluate the business requirements with the services offered, against the cost of each provider. For that, following assessment aspects can be used:
1. Flexibility of integration and migration to/from other cloud platforms
2. Service catalogue to confirm that the requirements can be fulfilled by one provider
3. Support, Service Compliance and SLA offered by provider
4. Flexibility in Pricing Policy (Pay-Per-Hour vs Pay-Per-Minute vs Pay-Per-Second)
5. Provision for Backup & Recovery process
6. Hosting Compliances (PCI, HIPAA etc) needed in your application
7. The kind of data protection policies that you need
8. How much Storage and for what type of content it is needed?
9. If the targeted geographical region and datacenter regions supported by provider?
10. What is your budget for cloud infrastructure?
How to Optimally Use your Cloud Infrastructure?
The parameters shared above will help you to choose the service provider, which best responds to the business requirements. Given below are some contextual examples, which can help you understand- how to better utilize the cloud infrastructure:
- In case you are using a dedicated EC2 instance with third party Domain Management Service and SSL provider to host one of your static site, you can do the same with Amazon S3 (cheaper), Amazon Route 53 (faster) and AWS certificate manager (free) with much lesser operational cost, better performance and high availability. You can further speedup your website by adding AWS CloudFront in front of S3.
- If your application requires frequent start/stop, then choose a cloud service provider based on pricing policy. For such scenarios, opt for providers with pay-per-second policy (Google Cloud) rather than those pay-per-minute/hour policy (AWS) for cost optimization.
- If your application is built using different Microsoft technologies (.NET, SharePoint, SQL Server etc.), then it’s better to go with Microsoft Azure. The reason is it provides seamless integration between Microsoft technologies. Consequently, you will also pay less for license cost for Windows Server and SQL server on Azure, as compared to other providers.
- Choosing the right type of instance of a cloud provider can also make a drastic improvement in performance of your infrastructure, while reducing the operational cost. Storage Optimized Instance types like I2 and D2 are a good fit for performance-sensitive NoSQL databases such as MongoDB and Cassandra. On the other sider, Compute Optimized Instance types like C3 and C4 are suitable for compute intensive applications such as high traffic websites and high business workloads.
- If your application requires custom configuration like 1.5 GB of RAM, then go with Google Cloud where you can select 1 CPU and exact 1.5GB RAM or 2GB or 2.5GB RAM, as required. Such custom configuration is not supported by other providers.
- In case you are using microservice architecture, you can use AWS Lambda functions with S3 or Google Cloud Functions with cloud storage for running long, asynchronous tasks.
- If you are using EBS for data volumes where upfront capacity is required but you don’t have any idea about your exact storage need, then try EFS or S3 as a data directory mounted on your EC2 instance to store static files for your application and both are infinitely scalable.
- If for security you never go beyond Security Group in AWS, you should give a try to other security services from AWS to achieve enterprise level security for your application. Services like AWS shield to protect against DDos attacks, Custom VPC and subnets well defined IAM users, roles, groups, policies, ELB with dedicated firewall instances to create DMZ zone, AWS CloudTrail, Amazon CloudWatch, Amazon Inspector etc. works well.
- If you are planning to develop an application with audio/video streaming, you can use Amazon Elastic Transcoder service with S3 and CDN. It will let you achieve performance and scalability, comparable with platform like Youtube which would otherwise consume lot of your time and energy to implement the same functionality in your application.
The above list contains just a few examples. There are hundreds of use cases where you can utilize different services offered by your cloud hosting provider to add value to your business application. Also, you can mix and match different services from different cloud platforms to create a highly optimized environment for your application.
If you need help in your cloud hosting strategy, schedule a free 30 min consultation with our cloud expert, Gaurav Sharma.