AWS Lambda – microservices gamechanger
“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.