Hacker News new | comments | ask | show | jobs | submit login
Ask HN: DO You Use AWS Lambda? Why? Why Not?
47 points by siscia on Feb 7, 2016 | hide | past | web | favorite | 24 comments

this night I dream an architecture to build a "clone" of AWS Lambda.

The more I think about the more it seems reasonable.

Before to start coding and stuff, I would like to know if you guys are using AWS Lambda, what you like of the service and what you dislike.

What would it be your perfect Lambda ?

Thanks :)

Hi everyone,

I'm a Technical Evangelist at Amazon Web Services.

Here are some videos from re:Invent 2015 on AWS Lambda : technology, use cases, customer stories. I hope you find them useful :)



Please please please please support a sane version of Node (something released less than 9 years ago would be nice...)

As you can see in comments here, folks would find them more useful if this worked inside private VPCs.

It should run containers and not be so "PaaS-y".

Large burstiness would also be amazing.

Imagine running Spark where a hundred workers are allocated for 30 seconds. It makes it possible to build services like BigQuery.

Great suggestion, I do agree with everything you said :)

Still lambda dont have vpc support. That means if you want update a database row from lambda function in you ec2 machine then the db port should be open to public. So we are waiting for vpc support.

They announced that support was on its way, but they missed the "end of 2015" release estimate. This seems to be the most up-to-date thread on their support forums (we're following along closely!): https://forums.aws.amazon.com/thread.jspa?threadID=178841&st...

DevOps here.

I use Lambda for a lot of aws backup jobs that boto can do. For example

* RDS hourly snapshots * EBS daily snapshots * checking contents of s3 buckets

Works great for that type work for me as long as the job doesn't run for more then 300 seconds.

I was looking into it as a scalable solution for the backend of an app, but I was turned off by reports of high latency (up to a couple seconds) and the initially low limits for the service (they've been upped, but I think it was 60 second timeout per lambda and max 100 concurrent lambdas across an entire account; now it's 300 seconds and 1024 concurrent processes).

Lambda seems designed for internal trusted use for offline or background data processing, not for writing a public API endpoint.

AWS provides an API gateway service! http://aws.amazon.com/documentation/apigateway/

Might fit your needs better than Lambda.

It is exactly the problem I would love to solve, great that you feel the same :)

I am curious about the answers you will get. I'm on the other side of the pipeline: I'm planning to use a Lambda and I'm eager to hear why it is good and why it is not.

At work, we invoke an async Lambda function to make a lot of concurrent requests to different APIs for one input. In short: a batch.

Lambda passes the data to another component on AWS to be processed.

The input sources for data range from APIs calls on Lambda, data from partners, data from legacy components, etc. So we split our data sourcing/fetching and data processing. They all flow into the same funnel (component) to be processed.

We've hooked up lambda to boot "on-demand" Celery (http://www.celeryproject.org/) workers. Allows us to scale up workers (for async task processing, etc.) in ~1-3 seconds vs the ~3-5 minutes it takes to boot EC2 instances for extra capacity.

Use Lambda + PhantomJS + D3 to make a lot of visualizations that are saved as images. It works well but the development was a bit of a pain, and finding a PhantomJS binary that was compatible with Amazon's flavour of linux took a little while.

I use lambda in a pipeline that spins up ec2 instances using a cloudformation template. The lambda is kicked off by an SNS message sent by a GUI on a dedicated server, and also checks an SQS queue.

I don't use it, as I have no real idea of what it is for, and if I have any use cases where it would be suitable.

Anyone got a one or two line description of the sort of problems it would be good at solving?

It's a hosted evented framework. You just write stateless functions and configure the service to call them in response to certain events (such as HTTP requests), without worrying about the servers where they run.

Running a large scale analytics tracking backend for a game on AWS (written in swift, needs some hacks). About 5 million requests/hour.

Pro: - Dirt cheap (pay only what you need) - Scales fast and large - Just works

Cons: - Getting swift to run is very hacky

Considering to replace the game backend (scala on ec2) with Swift on Lambda (plus API gateway)

ps: Lambdas do run in containers/instances that get reused ... unless they are idle for too long.

Then how different containers get isolated from each other?

I use Lambda for creating thumbnails of user-submitted images. Works great!

It seems to me that lambda is made possible by the large infrastructure and wide variety of services that AWS provides. I don't see how you could recreate that in a small-company environment.

Applications are open for YC Summer 2019

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact