What Is Apache OpenWhisk?

Apache OpenWhisk is a serverless, open source cloud platform that allows you to execute code in response to events at any scale. OpenWhisk handles the infrastructure and servers so you can focus on building amazing things.

Apache OpenWhisk allows developers to focus on writing value-adding code instead of burning hours on architecture and server management. Write in your preferred language to combine custom code with plug-and-play packages from our rich ecosystem of supporter services, and go live in hours instead of weeks.

Package creators can easily add their service to Apache OpenWhisk’s growing ecosystem to eliminate the need to build in-house solutions for third-party integrations, reach a broader community of developers, and increase adoption of their products and services.

The Apache OpenWhisk community is driven by open source contributors who are advancing this bleeding-edge technology, growing their skillsets, and pushing the boundaries of serverless technology.

High-Level Programming Model

OpenWhisk is an open source, distributed serverless computing platform able to execute application logic (Actions) in response to events (Triggers) from external sources (Feeds) or HTTP requests governed by conditional logic (Rules). It provides a programming environment supported by a REST API-based Command Line Interface (CLI) along with tooling to support packaging and catalog services.

Apache OpenWhisk architecture

Event Sources

Event sources, such as devices, queues, databases, and webhooks, emit classes of events in the form of triggers.

Triggers

Triggers are the class of events (including device readings, published messages, and data changes) that are emitted by event sources.

Actions

Actions are functions that encapsulate code – written in any supported language by implementing a single method signature – to be executed in response to a trigger.

Rules

Rules represent the declarative association between a trigger and an action, defining which action(s) should be executed in response to an event.

Sequences

Sequences allow to chain together a sequence of actions in a declarative fashion.

Packages

Packages encapsulate external services in a reusable manner and assemble them into triggers and actions.

Apache OpenWhisk is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
Apache Incubator logo