Web Development on AWS from Small to Large Scale
From my experience in the pass 8 years on web development industry, I find the common software development cycle can be way too complex and time consuming when apply on small to medium web applications. A one man show web development might not need the trending development framework, just keep it small and lean. While a framework is a must for managing a small to medium group of developers
I suggest that we categorize the web developments into these categories:
Small scale:
- AWS Disaster Recovery Plan: Simple disaster recovery plan
- Methodology: Extreme programming
- Example: Facebook Apps, Micro CMS, Static HTML, Micro web applications
Medium scale:
- AWS Disaster Recovery Plan: General disaster recovery plan
- Methodology: Extreme programming or Lean software development
- Example: Open source CMS, wordpress, drupal, customized CMS, General web applications
Large scale:
- AWS Disaster Recovery Plan: Advanced disaster recovery plan
- Methodology: Lean software development or Rapid application development
- Example: *aas, Platforms, API, Web services, Big Data, government project
- (Most of the suggestions from Tom are large scale, it’s a useful guidelines and we can simplify it according to our needs)
Scale | AWS Disaster Recover Plan |
Small | Simple: AWS AMI, S3 monthly database backup |
General | General: AWS AMI, S3 weekly database backup |
Advanced | Advanced: AWS AMI, AWS RDB, Load Balancer, Auto Scaling Group |
Hosting Plans
In order to have a better decision on which hosting plans should be use, you should take the following applications characteristic into consideration:
Micro Web Applicatications
- Static HTML sites
- Facebook Apps
- Low data communications
- Low traffic
General Web Applications
- WordPress or other CMS
- Customized CMS or Application
- Database driven application
- Low to Medium data communications
- Require simple backups and failover solutions
- Low to medium traffic
Advanced Web Applications
- Complicated Web Applications such as sharepoint, big data, APIs, web services.
- Multiple Databases driven application
- Medium to High data communications
- Require advanced backups and failover solutions
- Medium to high traffic.
Hosting Providers | Hosting Plans | Deployment | Disaster Recover Plan | |
Micro Web Applicatications | Amazon AWS | T or M Class instances | GIT, local staging | AWS AMI, S3 monthly database backup |
General Web Applications | Amazon AWS | M Class instances | GIT, local staging or external staging and production environment | AWS AMI, S3 weekly database backup |
Advanced Web Applications | Amazon AWS | M.xlarge or C Class instances | GIT, external staging and production environment | AWS AMI, AWS RDB, Load Balancer, Auto Scaling Group |
Please note that rational estimations and hosting experiences are required to determine which hosting provider and plan to be use. Use the following to decide on your provider. You should be looking for a balance between flexibility, service offerings and cost.