AWS Chalice – I must try it!

Traditional REST API Setup in AWS

  • Multiple EC2 instances
  • Part of an Auto Scaling group
  • Setup with an Elastic Load Balancer
  • Code is manually deployed with your tool of choice (e.g. Ansible)
  • CloudWatch for monitoring

Serverless REST API Setup in AWS

  • Amazon API Gateway (front door)
  • API Gateway handles monitoring, access, and authorization
  • AWS Lamda is configured as the back-end (Pay compute time only)
  • No EC2 servers to manage, AWS handles it
  • Manually setup or extensive SDK scripting needed

Chalice Serverless REST API Setup in AWS

  • Chalice is a Python package with syntax similar to Flask.
  • Main Chalice components
    • App object, routes, and file
  • Chalice allows you to “quicky” deploy your Python API via the Chalice CLI to AWS
  • Auto generated IAM policy
  • API Gateway and Lamda are used “behind” the scenes and automatically configured