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

Azure Functions

782
689
+ 1
62
Google Cloud Functions

479
471
+ 1
25
Add tool

Azure Functions vs Google Cloud Functions: What are the differences?

Introduction

Azure Functions and Google Cloud Functions are serverless computing platforms offered by Microsoft Azure and Google Cloud respectively. Despite being similar in concept, there are several key differences between the two platforms that set them apart in terms of features, capabilities, and integration options. This article will outline the six key differences between Azure Functions and Google Cloud Functions.

  1. Programming Languages Support: Azure Functions supports a wide range of programming languages including C#, JavaScript, Python, PowerShell, and TypeScript, offering developers the flexibility to choose their preferred language. On the other hand, Google Cloud Functions primarily focuses on JavaScript and Node.js, limiting the language options available to developers.

  2. Integration Options: Azure Functions provide seamless integration with other Azure services such as Azure Blob Storage, Azure Cosmos DB, Azure Event Hubs, and Azure Service Bus. This allows developers to easily build serverless workflows and trigger functions based on events from various Azure services. In comparison, Google Cloud Functions also offers integrations with various Google Cloud services like Cloud Storage, Pub/Sub, and Firestore, but the range of integrations is somewhat limited compared to Azure.

  3. Scaling and Performance: Azure Functions leverages the dynamic scaling capabilities of Azure App Service, enabling automatic scaling of functions based on the workload. This ensures that functions can handle spikes in traffic efficiently. Google Cloud Functions also offers automatic scaling based on the number of incoming requests, but there have been instances where Azure Functions has shown better performance and faster cold start times.

  4. Pricing Structure: Azure Functions pricing is based on the number of executions, execution time, and memory consumption, allowing users to optimize costs based on their specific requirements. Google Cloud Functions, on the other hand, follows a similar pricing model but also takes into account the number of compute resources used, which can sometimes make it harder to estimate costs accurately.

  5. Development and Deployment Experience: Azure Functions can be developed and deployed directly within the Azure portal, making it easy for developers to manage and monitor their functions. It also provides a local development environment through the Azure Functions Core Tools. In contrast, Google Cloud Functions relies on the use of the Google Cloud Console or command-line tools for development and deployment, which might require additional setup and configuration steps.

  6. Vendor Lock-in and Portability: Azure Functions are tightly integrated with the Azure ecosystem, making it easier to leverage other Azure services, but it also creates a tighter coupling with Azure, potentially resulting in more vendor lock-in. Google Cloud Functions, on the other hand, offers a more portable solution that can be deployed and run across different cloud providers through the use of Knative, an open-source platform for building serverless workloads.

In Summary, the key differences between Azure Functions and Google Cloud Functions lie in programming language support, integration options, scaling and performance, pricing structure, development and deployment experience, and vendor lock-in and portability.

Advice on Azure Functions and Google Cloud 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 Azure Functions and Google Cloud Functions
Clifford Crerar
Software Engineer at Bidvest Advisory Services · | 9 upvotes · 66.4K views

Run cloud service containers instead of cloud-native services

  • Running containers means that your microservices are not "cooked" into a cloud provider's architecture.
  • Moving from one cloud to the next means that you simply spin up new instances of your containers in the new cloud using that cloud's container service.
  • Start redirecting your traffic to the new resources.
  • Turn off the containers in the cloud you migrated from.
See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Azure Functions
Pros of Google Cloud Functions
  • 14
    Pay only when invoked
  • 11
    Great developer experience for C#
  • 9
    Multiple languages supported
  • 7
    Great debugging support
  • 5
    Can be used as lightweight https service
  • 4
    Easy scalability
  • 3
    WebHooks
  • 3
    Costo
  • 2
    Event driven
  • 2
    Azure component events for Storage, services etc
  • 2
    Poor developer experience for C#
  • 7
    Serverless Applications
  • 5
    Its not AWS
  • 4
    Simplicity
  • 3
    Free Tiers and Trainging
  • 2
    Simple config with GitLab CI/CD
  • 1
    Built-in Webhook trigger
  • 1
    Typescript Support
  • 1
    Blaze, pay as you go
  • 1
    Customer Support

Sign up to add or upvote prosMake informed product decisions

Cons of Azure Functions
Cons of Google Cloud Functions
  • 1
    No persistent (writable) file system available
  • 1
    Poor support for Linux environments
  • 1
    Sporadic server & language runtime issues
  • 1
    Not suited for long-running applications
  • 1
    Node.js only
  • 0
    Typescript Support
  • 0
    Blaze, pay as you go

Sign up to add or upvote consMake informed product decisions

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.

What is Google Cloud Functions?

Construct applications from bite-sized business logic billed to the nearest 100 milliseconds, only while your code is running

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

What companies use Azure Functions?
What companies use Google Cloud Functions?
See which teams inside your own company are using Azure Functions or Google Cloud Functions.
Sign up for StackShare EnterpriseLearn More

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

What tools integrate with Azure Functions?
What tools integrate with Google Cloud Functions?

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

What are some alternatives to Azure Functions and Google Cloud Functions?
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.
Kubernetes
Kubernetes is an open source orchestration system for Docker containers. It handles scheduling onto nodes in a compute cluster and actively manages workloads to ensure that their state matches the users declared intentions.
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.
Cloud Functions for Firebase
Cloud Functions for Firebase lets you create functions that are triggered by Firebase products, such as changes to data in the Realtime Database, uploads to Cloud Storage, new user sign ups via Authentication, and conversion events in Analytics.
Apex
Apex is a small tool for deploying and managing AWS Lambda functions. With shims for languages not yet supported by Lambda, you can use Golang out of the box.
See all alternatives