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

Azure Functions

665
691
+ 1
62
Fission

27
80
+ 1
3
Add tool

Azure Functions vs Fission: What are the differences?

Introduction

Azure Functions and Fission are both serverless computing platforms that allow developers to build and run applications without the need to manage infrastructure. While they share similarities, there are key differences between Azure Functions and Fission that set them apart from each other. In this article, we will explore these differences in detail.

  1. Programming Language Support: Azure Functions supports a wide range of programming languages including C#, JavaScript, Python, PowerShell, and Java, among others, giving developers the flexibility to choose the language they are most comfortable with. On the other hand, Fission currently supports only Node.js and Golang, significantly limiting the language options available to developers.

  2. Scaling Model: Azure Functions automatically scales based on the demand, allowing developers to handle high-traffic scenarios without worrying about infrastructure provisioning. It leverages the Azure platform to provide seamless scaling capabilities. Fission, on the other hand, relies on Kubernetes for scaling. This means that developers using Fission need to set up and manage a Kubernetes cluster for autoscaling to work efficiently.

  3. Supported Cloud Providers: Azure Functions is a cloud computing service offered by Microsoft that is tightly integrated with the Azure ecosystem. It provides a seamless experience for developers who are already using Azure services. Fission, on the other hand, is cloud-agnostic and can be deployed on any cloud provider that supports Kubernetes. This allows developers to have more flexibility in choosing the cloud provider that suits their specific requirements.

  4. Event Triggers: Azure Functions provides a wide range of event triggers such as HTTP, timer, Azure Cosmos DB, Azure Blob storage, and Azure Event Grid, among others. This enables developers to easily build event-driven applications. Fission, on the other hand, primarily supports HTTP triggers. While it is possible to create custom triggers in Fission, the supported triggers out-of-the-box are limited compared to Azure Functions.

  5. Developer Experience: Azure Functions provides a comprehensive development environment with tooling support in popular integrated development environments (IDEs) such as Visual Studio and Visual Studio Code. It also offers rich debugging capabilities, making it easier for developers to write, test, and troubleshoot their functions. Fission, on the other hand, has a more minimalistic approach and relies on a command-line interface (CLI) for development and deployment tasks. While this provides a lightweight and flexible experience, it may lack some of the advanced features provided by Azure Functions.

  6. Pricing Model: Azure Functions offers both a consumption-based pricing model and a dedicated pricing model. With the consumption-based model, developers only pay for the compute resources used during function executions. Fission, on the other hand, follows a purely consumption-based pricing model, which means that developers only pay for the resources consumed by their functions. This can be advantageous for developers with sporadic workloads or who are looking for cost-effective serverless computing options.

In summary, Azure Functions provides a wider range of programming language support, seamless scaling capabilities, tight integration with the Azure ecosystem, extensive event trigger options, comprehensive development environment, and flexible pricing models. Fission, on the other hand, has a more limited language support, requires Kubernetes for efficient scaling, offers cloud-agnostic deployment options, has fewer built-in event trigger options, relies on a CLI for development and deployment, and follows a purely consumption-based pricing model.

Advice on Azure Functions and Fission

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
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Azure Functions
Pros of Fission
  • 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#
  • 1
    Any language
  • 1
    Portability
  • 1
    Open source

Sign up to add or upvote prosMake informed product decisions

Cons of Azure Functions
Cons of Fission
  • 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
    Be the first to leave a con

    Sign up to add or upvote consMake informed product decisions

    - No public GitHub repository available -

    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 Fission?

    Write short-lived functions in any language, and map them to HTTP requests (or other event triggers). Deploy functions instantly with one command. There are no containers to build, and no Docker registries to manage.

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

    What companies use Azure Functions?
    What companies use Fission?
    See which teams inside your own company are using Azure Functions or Fission.
    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 Fission?

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

    What are some alternatives to Azure Functions and Fission?
    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.
    Google Cloud Functions
    Construct applications from bite-sized business logic billed to the nearest 100 milliseconds, only while your code is running
    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.
    See all alternatives