In this article we will see how you can build a serverless image processor using S3 and Lambda. Lets see the use case where serverless image processing is required. Assume you are building a photo album application where people can upload their photos and then access the uploaded photos on web or using a mobile application.
Such use case very often require that once the original image is uploaded to the server, it needs to be processed further for following use cases:
In this article we will talk about how you can leverage AWS CloudWatch Rules and AWS Lambda to build a reliable, flexible, low cost and server-less batch processing. Typically batch processing involves running a scheduling engine and AWS EC2 instances. AWS Batch provides a nice abstraction and allows you to do batch processing at scale. However — It is not entirely “server-less”. AWS batch spins up EC2 instances to run your batch jobs. Most of the time you may have to leave a minimum capacity of EC2 in running state even if you are not doing any batch processing. This effectively means you are spending money even when you are not doing any work. So AWS Batch is not truly server less. What I will demonstrate today is how to do batch processing using serverless technologies like AWS Lambda. …
AWS Simple email service (SES) is Amazon’s answer to services like Mailchimp that allows you to efficiently manage your the promotional and transactional email traffic for your business. In this article we will look at many aspects of SES including the following:
Prerequisite for using SES in production
The most basic prerequisite for using SES in production is a SES verified domain that you will be using for your “FROM” email address. The simplest way to go about doing this is to buy the domain from Amazon on Route53. If you have domain registered already with another provider (e.g. …
In this article we will look at writing RESTful service using API gateway and Lambda. We will use DynamoDB as a backend store. We will use terraform to deploy all the AWS resources. We will write following APIs:
Please read the first article in the series here:
The code samples this article uses the DynamoDB table we designed in the above article.
In this article we will look at the following aspects of DynamoDB:
Batch Operation and Exponential Backoff
One of the most efficient ways to fetch / update / create / delete multiple items from DynamoDB is to use the batch APIs it offers. Using batch API prevents multiple round trips and improves the latency of the service / operation you are trying to perform. …
DynamoDB is fully managed NoSQL database and one of the key components of modern server less design on AWS. It is highly scalable and has very low latency for both read / write operations. In this article we will look at the following topics related to DynamoDB and its usage.
DynamoDB is most suitable for data which does not change often but is read multiple times i.e. write once (or may be few times) / read multiple times.
Data Modelling in DynamoDB
If you are coming from RDBMS background and are trying to figure out how to use DynamoDB for your use case, this is where you will struggle the most. So in order to explain the approach that one has to take while modelling using DynamoDB, remember the following things…
Read the overview of the Cognito User Pool in the article below:
In this article, let’s get a little hands on. I will cover some of the basic challenges that developers face when they first start working with AWS Cognito.
In the last article I talked about various workflow triggers that can be configured to kick off custom validations / workflows when a specific event happens e.g. user sign-in, pre-sign-up etc. AWS Cognito uses the AWS Lambda — a core technology of AWS server less technology stack — for this purpose. …
Amazon Web Service platform’s Identity and Access Management offering consists of two major components — Cognito User Pool and Cognito Identity Pool. In this article we deep dive into Cognito User Pool and find out what it is, how to use it and when to use it.
Cognito User Pool
Cognito user pool — at its core — is a “user repository” with very rich user registration and authentication capabilities. This is where you can define a schema of the “USER” entity of your application / solution. …