AWS Lambda vs Azure Functions

Need advice about which tool to choose?Ask the StackShare community!

AWS Lambda

15.1K
11.2K
+ 1
411
Azure Functions

433
471
+ 1
40
Add tool

AWS Lambda vs Azure Functions: What are the differences?

Developers describe AWS Lambda as "Automatically run code in response to modifications to objects in Amazon S3 buckets, messages in Kinesis streams, or updates in DynamoDB". AWS Lambda is a compute service that runs your code in response to events and automatically manages the underlying compute resources for you. You can use AWS Lambda to extend other AWS services with custom logic, or create your own back-end services that operate at AWS scale, performance, and security. On the other hand, Azure Functions is detailed as "Listen and react to events across your stack". Azure Functions is an event driven, compute-on-demand experience that extends the existing Azure application platform with capabilities to implement code triggered by events occurring in virtually any Azure or 3rd party service as well as on-premises systems.

AWS Lambda and Azure Functions can be primarily classified as "Serverless / Task Processing" tools.

Some of the features offered by AWS Lambda are:

  • Extend other AWS services with custom logic
  • Build custom back-end services
  • Completely Automated Administration

On the other hand, Azure Functions provides the following key features:

  • Easily schedule event-driven tasks across services
  • Expose Functions as HTTP API endpoints
  • Scale Functions based on customer demand

"No infrastructure" is the top reason why over 121 developers like AWS Lambda, while over 7 developers mention "Pay only when invoked" as the leading cause for choosing Azure Functions.

According to the StackShare community, AWS Lambda has a broader approval, being mentioned in 1002 company stacks & 585 developers stacks; compared to Azure Functions, which is listed in 27 company stacks and 21 developer stacks.

Advice on AWS Lambda and Azure Functions

Need advice on what platform, systems and tools to use.

Evaluating whether to start a new digital business for which we will need to build a website that handles all traffic. Website only right now. May add smartphone apps later. No desktop app will ever be added. Website to serve various countries and languages. B2B and B2C type customers. Need to handle heavy traffic, be low cost, and scale well.

We are open to either build it on AWS or on Microsoft Azure.

Apologies if I'm leaving out some info. My first post. :) Thanks in advance!

See more
Replies (2)
Anis Zehani

I recommend this : -Spring reactive for back end : the fact it's reactive (async) it consumes half of the resources that a sync platform needs (so less CPU -> less money). -Angular : Web Front end ; it's gives you the possibility to use PWA which is a cheap replacement for a mobile app (but more less popular). -Docker images. -Kubernetes to orchestrate all the containers. -I Use Jenkins / blueocean, ansible for my CI/CD (with Github of course) -AWS of course : u can run a K8S cluster there, make it multi AZ (availability zones) to be highly available, use a load balancer and an auto scaler and ur good to go. -You can store data by taking any managed DB or u can deploy ur own (cheap but risky).

You pay less money, but u need some technical 2 - 3 guys to make that done.

Good luck

See more

My advice will be Front end: React Backend: Language: Java, Kotlin. Database: SQL: Postgres, MySQL, Aurora NOSQL: Mongo db. Caching: Redis. Public : Spring Webflux for async public facing operation. Admin api: Spring boot, Hibrernate, Rest API. Build Container image. Kuberenetes: AWS EKS, AWS ECS, Google GKE. Use Jenkins for CI/CD pipeline. Buddy works is good for AWS. Static content: Host on AWS S3 bucket, Use Cloudfront or Cloudflare as CDN.

Serverless Solution: Api gateway Lambda, Serveless Aurora (SQL). AWS S3 bucket.

See more
Decisions about AWS Lambda and Azure Functions
Cory Bell

Netlfiy Functions uses AWS Lambda under the hood, but Netlify adds some nice sugar. The biggest advantage is the local development experience with netlify-cli. This allows you to run your functions locally with local configuration or pull configs from the Netlify dashboard. I built a health-check endpoint in about 2 minutes, and my send-email function in less than an hour.

See more

When adding a new feature to Checkly rearchitecting some older piece, I tend to pick Heroku for rolling it out. But not always, because sometimes I pick AWS Lambda . The short story:

  • Developer Experience trumps everything.
  • AWS Lambda is cheap. Up to a limit though. This impact not only your wallet.
  • If you need geographic spread, AWS is lonely at the top.
The setup

Recently, I was doing a brainstorm at a startup here in Berlin on the future of their infrastructure. They were ready to move on from their initial, almost 100% Ec2 + Chef based setup. Everything was on the table. But we crossed out a lot quite quickly:

  • Pure, uncut, self hosted Kubernetes — way too much complexity
  • Managed Kubernetes in various flavors — still too much complexity
  • Zeit — Maybe, but no Docker support
  • Elastic Beanstalk — Maybe, bit old but does the job
  • Heroku
  • Lambda

It became clear a mix of PaaS and FaaS was the way to go. What a surprise! That is exactly what I use for Checkly! But when do you pick which model?

I chopped that question up into the following categories:

  • Developer Experience / DX 🤓
  • Ops Experience / OX 🐂 (?)
  • Cost 💵
  • Lock in 🔐

Read the full post linked below for all details

See more
Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of AWS Lambda
Pros of Azure Functions
  • 126
    No infrastructure
  • 81
    Cheap
  • 68
    Quick
  • 57
    Stateless
  • 47
    No deploy, no server, great sleep
  • 9
    AWS Lambda went down taking many sites with it
  • 5
    Easy to deploy
  • 5
    Event Driven Governance
  • 5
    Extensive API
  • 4
    Auto scale and cost effective
  • 3
    VPC Support
  • 1
    Integrated with various AWS services
  • 12
    Pay only when invoked
  • 8
    Great developer experience for C#
  • 6
    Multiple languages supported
  • 5
    Great debugging support
  • 2
    Poor developer experience for C#
  • 2
    Can be used as lightweight https service
  • 2
    Easy scalability
  • 1
    Azure component events for Storage, services etc
  • 1
    Event driven
  • 1
    WebHooks

Sign up to add or upvote prosMake informed product decisions

Cons of AWS Lambda
Cons of Azure Functions
  • 5
    Cant execute ruby or go
  • 0
    Can't execute PHP w/o significant effort
    Be the first to leave a con

    Sign up to add or upvote consMake informed product decisions

    What is AWS Lambda?

    AWS Lambda is a compute service that runs your code in response to events and automatically manages the underlying compute resources for you. You can use AWS Lambda to extend other AWS services with custom logic, or create your own back-end services that operate at AWS scale, performance, and security.

    What is Azure Functions?

    Azure Functions is an event driven, compute-on-demand experience that extends the existing Azure application platform with capabilities to implement code triggered by events occurring in virtually any Azure or 3rd party service as well as on-premises systems.

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use AWS Lambda?
    What companies use Azure Functions?
    See which teams inside your own company are using AWS Lambda or Azure Functions.
    Sign up for Private StackShareLearn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with AWS Lambda?
    What tools integrate with Azure Functions?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    Blog Posts

    +47
    46
    68550
    +23
    12
    6318
    +42
    53
    19583
    What are some alternatives to AWS Lambda and Azure Functions?
    Serverless
    Build applications comprised of microservices that run in response to events, auto-scale for you, and only charge you when they run. This lowers the total cost of maintaining your apps, enabling you to build more logic, faster. The Framework uses new event-driven compute services, like AWS Lambda, Google CloudFunctions, and more.
    AWS Elastic Beanstalk
    Once you upload your application, Elastic Beanstalk automatically handles the deployment details of capacity provisioning, load balancing, auto-scaling, and application health monitoring.
    AWS Step Functions
    AWS Step Functions makes it easy to coordinate the components of distributed applications and microservices using visual workflows. Building applications from individual components that each perform a discrete function lets you scale and change applications quickly.
    Google App Engine
    Google has a reputation for highly reliable, high performance infrastructure. With App Engine you can take advantage of the 10 years of knowledge Google has in running massively scalable, performance driven systems. App Engine applications are easy to build, easy to maintain, and easy to scale as your traffic and data storage needs grow.
    AWS Batch
    It enables developers, scientists, and engineers to easily and efficiently run hundreds of thousands of batch computing jobs on AWS. It dynamically provisions the optimal quantity and type of compute resources (e.g., CPU or memory optimized instances) based on the volume and specific resource requirements of the batch jobs submitted.
    See all alternatives
    Reviews of AWS Lambda and Azure Functions
    Review of
    AWS Lambda

    I switched my auto chatbot to run in lambda and it was peace !

    Review of
    Azure Functions

    Poor developer experience

    How developers use AWS Lambda and Azure Functions
    Nathan Heffley uses
    AWS Lambda

    To use Pusher's presence channel each client must be connected through a backend authentication system. While Pointer doesn't actually have any login based authentication it still needed a backend system to connect users to the proper channel.

    A small function was built that only gets called when a user first joins a session. After the user is authenticated they can communicate directly with other clients on the same channel. This made the authentication code the perfect candidate for a serverless function. Using AWS Lambda through Netlify's Functions feature made it a breeze to host.

    Simple Merchant uses
    AWS Lambda

    We're moving almost the entirety of our backend processes into Lambda. This has given us vast cost savings in terms of pure infrastructure billing - and time worrying about platform and scale. This move has also made our architecture almost entirely event-driven - another huge benefit as our business itself is inherently event-driven.

    Volkan Özçelik uses
    AWS Lambda

    I mostly use AWS Lambda for triggering DevOps-related actions, like triggering an alarm or a deployment, or scheduling a backup.

    I haven’t gone totally “serverless” and I’m not planning to go 100% serverless anytime soon.

    But when I do, AWS Lambda will be an important element in my serverless setup.

    Promethean TV uses
    AWS Lambda

    PrometheanTV uses various Lambda functions to provide back-end capabilities to the platform without the need of deploying servers. Examples include, geo lookup services, and data aggregation services.

    Flux Work uses
    AWS Lambda

    Serverless is the future. And AWS Lambda is the most mature FaaS out there. AWS SAM makes it easy to package Lambda as micro-apps.

    Yonas Tesh uses
    Azure Functions

    I used Azure functions as part of an integration service when creating a bulk insert module in azure.