Skip to main content

Questions and AWS resource differences

AWS Lambda

Can have a maximum runtime of only 15 minutes.

AWS S3

If the items that you are uploading reaches above 100MB, then you should generally consider using multipart upload, to split each files up into smaller parts, upload the smaller parts and then merge them together after they are uploaded into a complete object.

Multipart helps with easily resume failed upload attempts.

aws s3 cp command automatically performs multipart uploading for you already.

AWS Peering

It has a limitation of 125 peer connections for each VPC.

Best used when you have client-server setup where you want to allow one or more consumer VPCs unidirectional access to a specific service (or a set of instances) in the service-provider VPC.

Here are the instructions on setting one up:

  1. Create a network load balancer
  2. Create service-consumer role in IAM
  3. Set up an endpoint connection in the shared services VPC, and set it to automatically accept
  4. Create consumer endpoints in each VPC that must access the shared VPC
  5. Then point the network load balancer in the shared service VPC

Amazon ElastiCache

A cache-as-a-service. It let you deploy, manage, and scale a distributed in-memory cache in the cloud.

It is built to boost performance of web-based application by reducing database load through quick retrieval of data from cache.

Amazon DynamoDB

DynamoDB is a key-value database, scales automatically, and handle spiky access pattern.

DynamoDB also have DynamoDB streams, it can stream data that's in the database.

Amazon Kinesis

You can configure kinesis to delivery streaming data from a database and you can deposit the data into a S3 data lake

DocumentDB

It is not a key-value database, it stores the data in a JSON format