Skip to main content

Helper library to handle warming requests from X-Lambda (more: https://bit.ly/xlambda).

Project description

X-Lambda Helper (Python version)

A Python library to help handle warm-up requests generated by X-Lambda.

X-Lambda predicts AWS Lambda demand and keeps a fleet of containers warm to mitigate cold-start latency. Warm invocations sent by X-Lambda are received by a Lambda function, which needs to respond accordingly.

This X-Lambda Helper project helps to handle warm invocations in Python functions.

Requirements

Quick start

  1. Install X-Lambda Helper: pip install xlambda_helper.
  2. Decorate your Lambda handler following the example below:
  3. Deploy your code in AWS Lambda.

Usage example

import xlambda_helper


@xlambda_helper.warm()
def handler(event, context):
    # Your original code goes here
    x_men = [
        {'Charles': 'Professor Xavier'},
        {'Logan': 'Wolverine'},
        {'Jean': 'Phoenix'},
        {'Scott': 'Cyclops'}
    ]

    return x_men

About

X-Lambda Helper will be executed every time your handler is invoked by AWS Lambda. It will check whether the invocation is a warming request coming from X-Lambda. If not, it will run your handler code normally. If yes, it will short-circuit to return a default answer and will not execute the handler function.

When handling warm requests, X-Lambda Helper will automatically adjust your function behavior:

  • Check whether it was a cold start
  • Sleep for a period of time, if needed
  • Defer to your original handler function, if invocation is not a warm request

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xlambda_helper-0.0.31.tar.gz (3.4 kB view details)

Uploaded Source

File details

Details for the file xlambda_helper-0.0.31.tar.gz.

File metadata

  • Download URL: xlambda_helper-0.0.31.tar.gz
  • Upload date:
  • Size: 3.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.3

File hashes

Hashes for xlambda_helper-0.0.31.tar.gz
Algorithm Hash digest
SHA256 657eb5bdbb7a4c37ee7d5c4481dd010a04a34d7e1030d1dc62d7c3612248184f
MD5 e94041260eb7182762010793b43c618f
BLAKE2b-256 55d69ef1e618aa7e00895f567aa57cd241780b56da5fcbe81aab15710f555d5d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page