Apache OpenWhisk is a serverless computing platform that executes application code in response to events. It provides the infrastructure for running functions without requiring developers to manage individual execution containers or manually scale every component.
The platform uses a programming model built around actions, triggers and rules. An action contains executable logic, while triggers represent events that can cause actions to run. Developers can also combine actions into sequences, allowing a single event to initiate a workflow involving several operations.
OpenWhisk can be deployed on Linux for development or installed on Kubernetes for distributed workloads. Its architecture uses several supporting services to coordinate requests, schedule function execution and manage resources. The platform has migrated its internal distributed messaging framework from Akka to Apache Pekko. Existing installations using the older architecture require a new cluster deployment and traffic migration when adopting the Pekko-based implementation.
This is free and open source software.
Key Features
- Actions encapsulate application logic and execute on demand inside managed containers, with support for multiple programming languages and custom runtimes.
- Triggers represent events from external sources or applications, while rules connect those events to the actions that should execute.
- Action sequences allow several functions to run in a defined order, supporting workflows assembled from smaller reusable components.
- Packages group related actions and feeds, making it easier to organise integrations and share reusable functionality.
- REST API provides programmatic access to function creation, invocation, event management and administration.
- wsk command-line utility offers an interface for deploying actions, invoking functions and managing triggers, rules and packages.
- Supports HTTP-based function invocation and the creation of serverless APIs.
- Event integrations can connect functions to messaging systems, databases and other external services.
- Standalone development environment provides a local stack with a browser-based playground for creating and testing functions.
- Kubernetes deployment allows functions to execute across distributed infrastructure using managed clusters or self-hosted installations.
- Extensible runtime system supports additional languages and custom execution environments.
Website: github.com/apache/openwhisk
Support:
Developer: The Apache Software Foundation
License: Apache License 2.0
OpenWhisk is written in Scala. Learn Scala with our recommended free books and free tutorials.
Related Software
| FaaS | |
|---|---|
| Serverless | Simple way to build serverless applications |
| Fission | Fast and Simple Serverless Functions for Kubernetes |
| Knative | Kubernetes-based, scale-to-zero, request-driven compute |
| Nuclio | Serverless for Real-Time Events and Data Processing |
| OpenWhisk | Serverless Functions Platform for Building Cloud Applications |
| wasmCloud | Runs and orchestrates WebAssembly workloads across clouds and edge |
| Nitric | Cloud application framework with automated infrastructure provisioning |
| Spin Operator | Kubernetes operator for deploying and managing Spin applications |
| Fn | Event-driven Functions-as-a-Service (FaaS) compute platform |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.