
Components Leveraged :
Jenkins/GitHub/EC2
Source code versioned with GitHub , built with the Jenkins server running in AWS EC2 instance for continuous integration on every commit to the GitHub repository, using web hook.
Domain Registration:
Route 53 is used for public domain registration.
Amazon ECS
Deployed services as docker container in ECS clusters by creating required task definitions with required configurations.
API Gateway:
Gateway for accessing the micro services deployed with in ECS .
Elastic Load Balancing:
Helps in balancing the incoming traffic to the system.
Amazon Cloudfront:
Web application deployed with cloudfront distribution for faster retrieval of images. Cloud front makes use of edge locations for better performance.
AWS Lambda:
integrated with cloudwatch. Used for invalidating the cache in cloudfront , when a new image is stored in S3 Bucket.
SNS:
Cloud based pub/sub messaging service used for sending the notifications and alarm when the system is unhealthy to the management.
IAM:
Used for authorized access for various AWS services and resources.
Cloudwatch:
Used for monitoring various cloud services deployed as part of the system.
Lex and Poly:
Used for chat bot services of the application. Lex provides interface with social channels like facebook. Poly used for text to voice service in the application.
S3:
Frequently accessed images stored in S3, on the other end old images are stored in glacier for audit purpose.