Live data from Hacker News

AWS Lambda Makes Serverless Applications a Reality

techcrunch.com

11–20 of 55 posts

Re: AWS Lambda Makes Serverless Applications a Reality

#11
post #2

We're considering using API Gateway and Lambda for our upcoming API service. Would love to hear feedback from anyone who's tried it. From the linked article, I got one gist [1] which wasn't very favorable for the API Gateway + Lambda setup. [1] https://gist.githubusercontent.com/mpdehaan/d979252b9c69cfd1...

My company is building exclusively[0] on Lambda and API Gateway. It's definitely got its warts and you'll be paying an early adopters tax for sure.

My cofounder wrote a tool to help manage Lambda deployments: https://github.com/garnaat/kappa/tree/python-refactor

[0] Well as much as we can. We're building a Slack bot right now so we still need a container running under ECS to maintain the connection to Slack.

Re: AWS Lambda Makes Serverless Applications a Reality

#12
If Lambda is able to expand the /tmp disk space from 500MB to a few GB I think that will further make the adopter better on my end. I have a requirement in which Lambda is a perfect solution except the disk space is not enough. Of course I can further divide the work into smaller chunks. If you have use distributed task library like Celery, just think of that no longer tie to your application, and you can run on event based (S3, SNS, email notification via SNS). It's quite awesome. You can probably build a public API using Lambda and API Gateway.

However, once you start using Lambda, like distributed system, testing becomes a challenge if you are used to testing everything you own in one or two monolithic codebase. I wish someone could come up with a mock version of AWS :-)

Re: AWS Lambda Makes Serverless Applications a Reality

#13
My contribution to the Lambda application construction party:

https://github.com/exratione/lambda-complex

Lambda Complex is a Node.js framework for applications that run entirely within Lambda, SQS, and other high abstraction layer AWS services. It is well suited to non-realtime content generation and other types of application driven by message queues and which require enforced concurrency limits. Examples include high volume generation of static content from data or other types of workflow initiated in response to messages placed into SQS queues.

Re: AWS Lambda Makes Serverless Applications a Reality

#14
post #2

We're considering using API Gateway and Lambda for our upcoming API service. Would love to hear feedback from anyone who's tried it. From the linked article, I got one gist [1] which wasn't very favorable for the API Gateway + Lambda setup. [1] https://gist.githubusercontent.com/mpdehaan/d979252b9c69cfd1...

I'm so glad you asked this! I just built a service on API Gateway + Lambda in the past two weeks. Here's my unstructured thoughts -

* I love that I don't have to provision any resources. The fact it will scale to volume automatically is a huge win.

* Lambda was a treat to work with. We used it with Python. Both the web console and API interface worked great for us.

* I was able to get Lambda development working end-to-end with a Makefile and the AWS CLI.

* API Gateway was a bear to work with. The concepts are unintuitive, the interface sucks, and the logging is lackluster. I found it difficult to go through the develop/test/deploy cycle on because of these issues.

* API Gateway is brand new. Brand new AWS services have bugs. We hit bugs.

* API Gateway documentation is awful.

* API Gateway had a bug where it stopped logging. If it doesn't log, it is literally impossible to debug. This hard-stopped development for 5 days while they worked on a fix.

* There's an invisible error case where your API doesn't have permissions to invoke the Lambda command. It's easy to hit and annoying.

* API Gateway doesn't support POST requests in the way you would expect. This leads to over-complicated setups for simple use cases.

* I really don't prefer the way mapping templates work in API Gateway.

Overall, our setup is humming along nicely, but it's just 2 routes. I just reviewed the Gist and I agree with many of the concerns expressed in it.

Re: AWS Lambda Makes Serverless Applications a Reality

#15
post #7
post #2

We're considering using API Gateway and Lambda for our upcoming API service. Would love to hear feedback from anyone who's tried it. From the linked article, I got one gist [1] which wasn't very favorable for the API Gateway + Lambda setup. [1] https://gist.githubusercontent.com/mpdehaan/d979252b9c69cfd1...

Depends on your use case and what language you are currently using. We are using nodejs and have built our own collection of libraries: https://github.com/MitocGroup/deep-framework And here is an example: https://github.com/MitocGroup/deep-microservices-todo-app Based on our experience, currently AWS Lambda is amazing for data / content / asset management use cases. Cold start is a known issue, which I hope AWS will…

How is the 0.10.x version of Node treating you? That's what's keeping me off of Lambda at the moment. I guess I could use Babel before deployment, but what about external libs?

I'm thinking of the following workflow:

1. Write/debug with TypeScript -> ES6 on Node 5

2. Compile to a single file (not sure if I can use tsc or Babel for this -- basically just inline all the imports)

3. Transpile the resulting single file to ES5

I'm not sure if it's going to work, though...

Re: AWS Lambda Makes Serverless Applications a Reality

#16
post #12

If Lambda is able to expand the /tmp disk space from 500MB to a few GB I think that will further make the adopter better on my end. I have a requirement in which Lambda is a perfect solution except the disk space is not enough. Of course I can further divide the work into smaller chunks. If you have use distributed task library like Celery, just think of that no longer tie to your application, and you can run on even…

Can you mount an EFS on the lambda instance (I don't know, but that comes to mind as a possible solution), possibly via a java NFS daemon or something in userspace?

Re: AWS Lambda Makes Serverless Applications a Reality

#19

It's funny we tested lambda + Amazon gateway api this week at work. It's awesome!.. Until you have to deal with the cold start issue. Our first call takes about 1.5 seconds; and then all other calls take about 50-80ms. Your container stays in cache about 5-10 minutes unless it is called back, there are no guarantees. This micro service is not called often and for us 1.5 seconds is never acceptable.

You could use a scheduled cron task in Lambda to make requests to keep your API hot.

Give SNS/SQS a look for polling solutions for API Gateway. We got around it by having a health check call in our set up.

Re: AWS Lambda Makes Serverless Applications a Reality

#20

It's funny we tested lambda + Amazon gateway api this week at work. It's awesome!.. Until you have to deal with the cold start issue. Our first call takes about 1.5 seconds; and then all other calls take about 50-80ms. Your container stays in cache about 5-10 minutes unless it is called back, there are no guarantees. This micro service is not called often and for us 1.5 seconds is never acceptable.

You could use a scheduled cron task in Lambda to make requests to keep your API hot.

You could potentially use that task as an availability test too.
Post reply on HN