AWS

How to perform database migration for a live service with no downtime

Migrating the database while continuing to serve user requests can be challenging. It’s a question that many students have asked during the Production-Ready Serverless workshop. So here’s my tried-and-tested approach to migrating a live service to a new database without downtime. I’m going to use DynamoDB as an example but it should work with most …

How to perform database migration for a live service with no downtime Read More »

The one mistake everyone makes when using Kinesis with Lambda

AWS Kinesis and Lambda are a great combo for processing large amounts of data in real-time. However, there’s a common oversight that many developers make when integrating these two services. There are established best practices for configuring Lambda’s EventSourceMapping [1] for Kinesis: Configure an OnFailure destination for failed records. Enable BisectBatchOnFunctionError. Override MaximumRetryAttempts. Choose a …

The one mistake everyone makes when using Kinesis with Lambda Read More »

Serverless v4 will start charging users, but that’s a good thing

The Serverless Framework remains a top choice for serverless development, as evidenced by the recent State of Serverless report [1]. Yet, its appeal has waned over time due to the lack of innovation in recent years, prompting users to explore other options. Recently, they announced [2] significant updates for Serverless v4: Fees will be introduced …

Serverless v4 will start charging users, but that’s a good thing Read More »

Amplify: how to share code without Lambda Layers or private NPM

Sharing code efficiently across different parts of an application can be challenging with AWS Lambda, especially when using Amplify. Today, I’ll walk you through a solution to this common problem, without relying on Lambda Layers or private NPM repositories. The Context In my previous post about Lambda Layers [1], I delved into its limitations, especially …

Amplify: how to share code without Lambda Layers or private NPM Read More »

How I built an affiliate tracking system in a weekend with serverless

Having taught thousands of students to build serverless applications via my online courses and workshops, I felt it was time to kick-start an affiliate program to boost sales. Affiliates would receive 50% of the revenue and get a 15% discount code for their audience. It feels like a good deal but I would need a …

How I built an affiliate tracking system in a weekend with serverless Read More »

Help! How do I set DeletionPolicy to Retain for production only?

It’s a good practice to use CloudFormation’s DeletionPolicy to protect stateful resources such as DynamoDB tables or RDS databases from accidental deletions. Such as when someone accidentally deletes a CloudFormation stack! As I discussed previously [1], this is a much better way to guard against these accidental data losses than separating stateful and stateless resources …

Help! How do I set DeletionPolicy to Retain for production only? Read More »

Static IP for Lambda: ingress, egress and bypassing the dreaded NAT Gateway

Many vendors require you to have a static IP address for your application. Such that all requests to their API must originate from an allow-list of IP addresses. In some cases, they even mandate that you use a static IP address for ingress traffic too. So they can communicate with your system through a trusted …

Static IP for Lambda: ingress, egress and bypassing the dreaded NAT Gateway Read More »

Step Functions: combine Standard and Express workflows for fun & profit

Step Functions’ state machines come in two flavours. By understanding their strengths and limitations, you can harness the combined power of both to optimize your processes for efficiency and cost. Standard Workflows Optimal for: Business-critical operations like payment processing. Strengths: Suitable for low-throughput scenarios. High maximum duration ensures enough time for retries using exponential backoff. …

Step Functions: combine Standard and Express workflows for fun & profit Read More »

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close