an experiment with aws lambda

Download An experiment with AWS Lambda

If you can't read please download the document

Post on 22-Feb-2017




0 download

Embed Size (px)


EMBL-EBI Now and in the Future

An experiment with AWS LambdaEBI Skills MapperDaniel

The ProblemMap the skills and interests of our developers

Easy to interact with and no registration

Enable finding patterns in the data

The Graph DatabaseAmazon EC2t2.micro with 8GB SSD


AWS Lambda


Language runtime vs. container or VMFunctions are unit of deploymentJava 8, Node.js or Python 2.7Linux containers + packing algorithmScaling handling for youStateless permanent storage is elsewherePay per request

Getting email in

SES(Simple Email Service) Lambda SNS(Simple Notification Service)

To: nodejs aws-lambda

Processing email

SNS(Simple Notification Service) Lambda Graph Database



Gathering more information

SNS(Simple Notification Service) Graph Database

Lambda Stack Overflow API

EBI Intranet


Getting information out

API Gateway Lambda Graph Database

Serving the UI

Route 53( on S3API Gateway

The Result

The Graph

What I likedLow costsVery nearly free and will be even with thousands of usersClean architectureForced to have independent functions that do one thingHugely powerful and flexible toolkitFeels productive as a developer~1 feature per hour (40 hours total)

What I didnt likeTools are still emergingnode-lambda used for local execution, testing and deploymentCan see managing many functions and will get trickySetting up plumbing like SNS events and permissions not automated (for me)A slight delay in cold start of Node.js functions but better than JavaError handling needs a bit of thought

Future plansCloud Formation for LambdaAPI Caching (very small $ cost)Tuning (turn up the dial)Editing web frontend with login and API authenticationI am optimistic Lambda will become production ready

Thanks to

Jenny ChamUX, prototyping and testingKen HawkinsVisual design and styling

Try it out To: i.learned.from@gcscc.siteSubject: aws-lambda