Skip to content

Latest commit

 

History

History
42 lines (28 loc) · 3.24 KB

Introduction.md

File metadata and controls

42 lines (28 loc) · 3.24 KB

Introduction

Get acquainted with before you dive dive head-first into the fire 🔥

What is lambda-lambda-lambda (L³)?

L³ is an extremely simple/lightweight Node.js serverless application framework that was designed to meet the following requirements:

  • Lightning fast application development.
  • Easy to audit (no code bloat or dependency hell - KISS)
  • TDD (test-driven development) by design.
  • Scales indefinitely at a very low cost.

The framework, which is nothing more than a collection of dependencies, consists of a router and related middleware, server emulator, and common tools (e.g. ESLint, JSDoc, Swagger) to further application development using latest coding standards.

L³ framework features

Why would you use L³?

You want to build complex web applications that leverage both AWS CloudFront caching and Lambda@Edge global accessibility without:

  • Complex CloudFormation setups that includes fragmentation of Lambda tasks and services.
    • L³ handles HTTP path translation (i.e. route handling) which maps the request to an existing Lambda function.
  • Paying through the nose for idle services (e.g. EC2 servers, ElastiCache, API Gateway).
    • L³ can help minimize your application footprint without sacrificing availability or stability.
  • Coupling to a single Cloud/SASS provider.

How does L³ work?

In its most basic form the library provides helper methods that translate the CloudFront Lambda@Edge origin-request allowing you to handle response processing without the need to construct complex Lambda dependent responses.

To better visualize how L³ fits in the current AWS ecosystem the following high-level graph describes the HTTP Request/Response lifecycle and role of each AWS provided service.

HTTP Request/Response lifecycle