The other thing that is terrible is versioning. Lambda does not support versioning. And the resources/methods that you define for your various stages all share the same resources/methods, unless you want to change the signature of your calls. So if I want to change an existing Lambda function, then the minute I change it for my staging/test/qa environment, I have changed it for production as well. So, I can't roll back easily. I can script all this, but ouch. The alternative is to create a whole new API gateway, but that means that once I get my stuff tested, I essentially have to recreate my new environment in production, insteading of just clicking a button.
We have a client who is looking at sending a massive amount of data to a REST API. Looks like we are going back to Elastic Beanstalk, which is pretty good, it just has servers. But it works.
And, I'd say that using Dyanamo as a DB locks you much more securely into AWS than API Gateway and Lambda. Be pretty easy to take those Lambda functions and map them back into Express or Restify routes. Changing the database, arg.
We have a client who is looking at sending a massive amount of data to a REST API. Looks like we are going back to Elastic Beanstalk, which is pretty good, it just has servers. But it works.
And, I'd say that using Dyanamo as a DB locks you much more securely into AWS than API Gateway and Lambda. Be pretty easy to take those Lambda functions and map them back into Express or Restify routes. Changing the database, arg.