Create and run event-driven apps that scale on demand

The OpenWhisk serverless architecture accelerates development as a set of small, distinct, and independent actions. By abstracting away infrastructure, OpenWhisk frees members of small teams to rapidly work on different pieces of code simultaneously, keeping the overall focus on creating user experiences customers want.

Connect actions into flexible, scalable sequences

OpenWhisk is serverless, using business rules to bind events, triggers, and actions to each other. OpenWhisk actions run automatically only when needed. Its servlerless architecture promotes quickly, scalably creating and modifying action sequences to meet the evolving demands of mobile-driven user experience.

OpenWhisk driving an Internet of Things business case

Skylink is an application that uses IBM Bluemix OpenWhisk with the Cloudant, Alchemy, and Watson services to analyze and tag in realtime images captured by a drone.

Explore an open-ended ecosystem

Explore an open-ended ecosystem

OpenWhisk provides an open ecosystem in which anyone can contribute their OpenWhisk action code as building blocks to the expanding repository.

Speed and simplify development

Speed and simplify development

OpenWhisk accelerates application development, which enables developers to quickly build apps with action sequences that execute in response to our event-driven world.

Leverage the benefits of cognitive services

Leverage the benefits of cognitive services

OpenWhisk, by offering easy access to Watson APIs within the event-trigger-action workflow, makes cognitive analysis of application data inherent to your workflows.

Pay for what you actually use

Pay for what you actually use

It’s simple: pay for actual use rather than pre-allocated capacity. Costs increase only as you construct more OpenWhisk-intensive solutions or as existing solutions scale to support bigger loads.

How it works

How do you build an application into OpenWhisk?

OpenWhisk works through rules that bind events and triggers to actions. Web and mobile applications often invoke OpenWhisk actions directly through API calls via the mobile SDK. More commonly, Watson or other Bluemix services invoke OpenWhisk actions by generating events to which OpenWhisk actions respond.

How does OpenWhisk operate?

When an event or an API call invokes an action, OpenWhisk creates a container to run the action in a runtime appropriate to the programming language used. OpenWhisk also can run custom-coded actions packaged in a Docker container.

How do you monitor performance?

Use the dashboard's graphical summary of OpenWhisk actions to track their performance and health.

Use Case: Making Videos Searchable


Multiple programming languages

You can create OpenWhisk actions in Node.js and Swift—within an expanding list of supported languages.

Action chaining

Building sequences of OpenWhisk actions is language-independent. Gain the ability to connect microservices built by different teams to achieve desired business outcomes.

Asynchronous computing

OpenWhisk uses publication/subscription message queues, making its triggers always-on and its triggered actions efficiently asynchronous. OpenWhisk uses compute resources only when needed.

Integrated container support

OpenWhisk actions run in Docker containers, making the risk of vendor lock-in irrelevant. Your team can also flexibly re-use legacy code in your OpenWhisk actions.

Sign up for a Bluemix trial today

Sign up for a free 30-day trial and get access to explore any service you want and start building your web or mobile app.