What Is Apache OpenWhisk? An Overview of the Open‑Source Serverless Platform
Apache OpenWhisk is an open‑source, distributed serverless platform that runs functions in Docker containers, supports multiple programming languages, can be deployed on various cloud or on‑premise environments such as Kubernetes, and offers seamless integration with popular services, scalable execution, and resource‑efficient operation.
What Is Apache OpenWhisk?
Apache OpenWhisk is an open‑source, distributed serverless platform that executes functions (actions) in response to events of any scale. It uses Docker containers to manage the underlying infrastructure, servers, and scaling, allowing developers to focus on building high‑quality, efficient applications.
The platform provides a programming model where developers write action logic in any supported language, which can be dynamically scheduled and run in response to external sources (feeds) or HTTP requests via triggers. The project includes a REST‑API‑based command‑line interface (CLI) and tools for packaging, catalog services, and various popular container deployment options.
Deploy Anywhere
Because OpenWhisk builds its components with containers, it easily supports many deployment options on both local and cloud infrastructures. Options include popular container frameworks such as Kubernetes, OpenShift, Mesos, and Docker Compose. The community commonly uses Helm charts to deploy on Kubernetes, providing convenient implementations for both developers and operators.
Write Functions in Any Language
OpenWhisk supports a growing list of popular languages, including Node.js, Go, Java, Scala, PHP, Python, Ruby, Swift, as well as newer additions such as Ballerina, .NET, and Rust.
If a language or library is not available as a ready‑to‑use runtime, you can create a custom Docker‑based action by packaging your executable as a Zip Action and running it on the Docker runtime. Examples include tutorials for Rust and a full‑featured Haskell project.
After writing a function, locate your OpenWhisk instance with the wsk CLI and run your first action within seconds.
Easily Integrate with Many Popular Services
OpenWhisk lets developers use Packages to connect their actions with many popular services. Packages are provided as independent projects under the OpenWhisk umbrella or as part of the default catalog.
These packages enable integration with common services such as Kafka message queues, Cloudant databases, mobile push notifications, Slack messaging, RSS feeds, as well as development pipelines that connect to GitHub, JIRA, or custom data services like Weather.
You can also use the “alarms” package to schedule actions to run at specific times or recurring intervals.
Compose Your Functions into Rich Compositions
Using code written in JavaScript/Node.js, Swift, Python, Java, or other languages—or by packaging custom logic with Docker—you can run synchronous, asynchronous, or scheduled code. Advanced constructs such as sequences allow you to declaratively link multiple actions, while parameter binding avoids hard‑coding service credentials. Various development tools enable real‑time debugging.
Scale on Demand with Optimal Resource Utilization
In less than a second, OpenWhisk can handle up to ten thousand concurrent executions, or scale down to a single execution per week. Action instances automatically scale up to meet demand and disappear when idle, ensuring you only pay for active resources.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Architects Research Society
A daily treasure trove for architects, expanding your view and depth. We share enterprise, business, application, data, technology, and security architecture, discuss frameworks, planning, governance, standards, and implementation, and explore emerging styles such as microservices, event‑driven, micro‑frontend, big data, data warehousing, IoT, and AI architecture.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
