Hacker News new | ask | show | jobs
by mankash666 3250 days ago
If this works as advertised, it's awesome. It's like AWS lambda, without language restrictions, CPU or RAM throttling, etc. Truly serverless
6 comments

The equivalent of AWS Lambda is Azure Functions. It does have the same memory limits as AWS (max 1.5 GB per instance), though you can run for up to 10 minutes.

You can try for free for up to 1 hour (no credit card required!) at https://functions.azure.com/try.

(I'm a product manager on Azure Functions)

One more "serverless" offering from Azure focused on IT/Azure Management scenarios is Azure Automation. https://azure.microsoft.com/en-us/services/automation/

The difference between it and other serverless offerings like Lambda and Functions is that you can run your jobs for upto 3 hours (after which we will restart it, not kill it, so if it is idempotent it will work ). It supports PowerShell/Python right now. Another core feature is being able to run scripts on your own VM from the Cloud called the Hybrid Worker. This has support both for Windows/Linux machines. https://docs.microsoft.com/en-us/azure/automation/automation... (Disclosure: I am a member of the Azure Automation team)

This is only like AWS Lamda if a response time of a few seconds is acceptable to you. That's the time it takes to start up an instance according to the article.
FYI - AWS Lambda cold start times are also in the seconds [1]. I'm assuming Azure functions has the same limitation. After all, code has to be retrieved from storage over the network, environment set-up, and eventually, code needs to be run. This is a limitation of physics rather than software.

[1] - https://serverless.com/blog/keep-your-lambdas-warm/

Azure Functions has support now for pre-compiled functions. Start-up is fast, under 2 seconds for me and simple Http triggers.

Would be interesting to see a mashup of Azure Functions and ACI. In other words, use a event-driven trigger to spin up a container instance so you wouldn't be limited by the "serverless programming model".

The main limitation with lambda is really still code size. 50mb is tiny for all but trivial apps thanks to libraries.
FYI that Azure Functions doesn't have this limitation. Code is stored on your own storage account and you can go as high as you want.

(Disclosure: I'm a product manager on Azure Functions.)

Aren't Azure Functions the direct equivalent of AWS Lambda?
Yes, I'd say so.
Since you can basically run anything that fits inside a container, the comparison with AWS Lambda doesn't seem relevant to me.

If you really want to draw a comparison with AWS product, it's pretty much a serverless EC2 ECS.

Actually Lambda was my first thought as well.

I'll give you an example - When I first discovered Lambda I had been working with containers for 6-8 months already and when I saw lambda it hit me that they just have container images capable of running python and node projects that this spin this up in and run the code we ask them to.

My mind immediately then went to our data pipeline that I'd like to run on a nightly schedule. This is typically done using a tool like Airflow or Luigi but I thought I could probably even just build the whole thing in lambda tasks that trigger via cron and SQS.

The reason we ultimately did not do that with Lambda was because it limited the amount of A. time and B. Compute resources one lambda task could use and we did not want to try to optimize for that when working with increasingly large amounts of data.

With something like this (ACI) I could actually do exactly this and even if its triggered by something like Airflow or Luigi I could run those on a much smaller instance and save the larger compute problems to being done on ACI in small spurts

FYI that while you can solve similar problems with Container Instances and Lambda, the closest offering to Lambda is Azure Functions.