AWS Lambda – microservices gamechanger

20Mar - by Simon - 1 - In Development

AWS-Lambda-HowItWorksFascinated to check out Amazon’s latest techno-wheeze – AWS Lambda. This is a microservices engine that is available via their AWS cloud services. It enables the execution of a script or codeset – javascript (Node.js), python, C#.Net or Java class – in a serverless environment. The execution is triggered by events such as a REST API call, a change in the contents of an S3 (Amazon storage) directory or any sort of database event triggered on the Amazon DynamoDB instances.

Serverless Services

“Microservices” is at risk of becoming the next “Big Data” : a hyped moniker that is arguably not appropriate here. Whilst it serves a service-orientated architecture, the Lambda proposition is simple and compelling. Imagine being able to quickly design and then implement a function which is triggered by another system or user action. This could be something as simple as a notification, or more complex and involved such as ingesting and transforming a data stream to an analytics engine in an Apache Spark-like manner. There is no concept of infrastructure – no hardware, VM or other server instance to consider. Just the assembled code with instructions on who and what can trigger it, and where the results should go. (My assumption is that) The name comes from Lambda abstractions or anonymous functions.

A New Wavelength

AWS Lambda enables functions which work with, for example, the Alexa voice recognition service, including the Amazon Dot and Echo home voice appliances. Its server-less nature and cloud delivery suggest a concept akin to Zapier or IFTTT but this is rather more powerful. Execution of a single thread is limited to 5 minutes (technically 300 compute-seconds) so complex manipulation or intensive processing of large datasets is not feasible (and best left to a dedicated engine). There is no theoretical maximum of calls to the same code/function, although AWS does impose a limit of 100 parallel executions (which can be increased on-application). 1 million AWS Lambda ‘executions’ for a maximum of 3.2m compute seconds are available monthly in the AWS free tier.

I have yet to try it. There is a great documentation base, including many code examples to get to grips with. My initial reaction is that this could be another game-changer from the company that launched the cloud. Worth a look.

One thought on “AWS Lambda – microservices gamechanger”

  1. STOP PRESS: it seems I am doing a disservice to Google’s cloud service (GCP) which also offers a serverless execution environment on GCP. Check out the Forbes’ article here:
    https://www.forbes.com/sites/janakirammsv/2016/02/09/google-brings-serverless-computing-to-its-cloud-platform/#613df8271186

    Whilst Lambda was first (although Google are claiming in their NEXT 2017 briefing pack that they launched ‘Cloud Functions’ in 2008, Forbes suggest otherwise), there is no doubt that such tech is useful. Activity is likely to explode once architects and developers appreciate the opportunities.

Leave a Reply

Your email address will not be published. Required fields are marked *