Ask HN: What production features have you built using AWS Lambda/Serverless?

10 points by sriram_iyengar ↗ HN

18 comments

[ 2.8 ms ] story [ 12.6 ms ] thread
Not sure if this counts as a production feature but I use Lambda as a Sendgrid webhook handler to calculate/update some custom fields in a CRM in response to email events. Basically Zapier on steroids
1. Contact forms and newsletter signups for static html sites.

2. Endpoint for collecting anonymous usage stats in our apps.

I use Viasocket.com to build the hacks. I use my signup date in Sendgrid, Google sheet, Alexa API, Woodpeaker, saleshandy and many more.
We built the entirety of the Give to Lincoln day giving day website using AWS lambda and DynamoDB. This includes tracking nonprofit registration, handling donations, and an admin area for managing the giving day.

https://www.givetolincoln.com/

I write LastWeekinAWS.com using an entirely serverless workflow. DynamoDB holds the links, populated through a scheduled Lambda function that pulls them in from Pinboard. Lambdas handle building out the newsletter from a Jinja2 template, building the archive on a schedule, and injecting static headers into the CloudFront distribution.
Your weekly newsletter is very useful. I have subscribed already
I use it to selectively run e2e tests for a particular git feature branch

Add a specific label in Github PR => Listen to Github PR webhook => Trigger e2e tests in CI for that branch

Pdf manipulation, e.g. transforms, thumbnails, etc. This is on Azure Functions which is equivalent to Lambda.

Nice things scalability, not taking down the site if there is a segfault, and cost. Can run a smaller webserver and PAYG on the functions overall it costs less.

I'm using it as a proxy with IP rotation. It is not a perfect solution, but solved my problem more than one time.

It is a lot cheaper than a "proxy as a service".

I thought lambda was configured to use a single exit IP that rotates every 4 hours. How many IP's are you getting via this method, and are you using any tricks (multiple accounts, etc) to get a wider variety of IPs?
To be honest, I have no idea. Maybe I'm even wrong about why it works.

I have a toy service with ~200k requests/day to a public service and I was blocked all the time.

After I changed to use API Gateway + Lambda as a proxy, never had these problems again. I just monitor the 4xx and 5xx errors and they are almost zero now.

I used AWS Lambda with API Gateway to provide a single API endpoint allowing other services to exchange authentication keys for new tokens.

The functionality was so small and temporary it was great to be able to not need to provision anything and not even pay (our usage is under the free tier).

The regex to deal with error handling and API GW in general were pretty clunky. The Lambda was a self contained and unit/integration tested Java project.

I've been using it for lots of things lately. The last thing was to process ebs volumes that get left behind when leostream deletes instances from it's pools. (we need fresh machines all the time, so that's why we delete these instead of re-using) We have it delete the machine from the pool, and the ami is set to not delete the volume. I use a cloudwatch event to detect this, spin up a new ec2 instance, attach the available volume, process some logs from it and then delete the new ec2 instance along with the volume.
Thanks - that was useful. Low level admin of AWS env can be done via short lived lambdas, is what i can infer.
I have two products already running exclusively on AWS Lambda as we speak. One of them now counts over 200 Lambdas and is being developed by three engineers.