2 ms·
(I'm speaking about AWS Lambda because that's the only one I know) These serverless architectures handle everything for running your app for you, and they go a
by Artemis2 11y ago
(I'm speaking about AWS Lambda because that's the only one I know)
These serverless architectures handle everything for running your app for you, and they go a mile further than application platforms like Heroku. You upload your code, which is only a collection of functions written in JavaScript/Java/Python. These functions have a single purpose: reply to HTTP requests. They can communicate with other services (AWS or not; e.g. databases) and do any kind of processing. Amazon gives you a HTTP endpoint and lets you build REST-like APIs that call these methods. When you get a call, AWS will run your function on one of their servers. Your code only runs when a request comes in, and if there are a lot of them, it just runs on multiple servers. You are billed for the time your functions run and the memory they use. Amazon does everything for you: scaling, cross-datacenter availability, networking, security.
The idea sounds groundbreaking (literally nothing to manage except application code), but in practice I have found Lambda + API Gateway (the product for piping HTTP requests to Lambda functions) both very hard to use, with a very poor UX. Also, one of the downsides of having to load functions before execution is that response times are bad (500ms+). However, if you have enough traffic, you may get reasonable performance when your service has "warmed up", thanks to caching.
I'll take a look at hook.io, but here's their product page: https://aws.amazon.com/lambda/details/ https://aws.amazon.com/lambda/details/ (I'd suggest you look at the pricing page too)