| --- |
| layout: default |
| --- |
| <section class="site-section site-section--gray"> |
| <div class="main-content"> |
| <h1 class="main-content__title"> |
| {{ page.title }} |
| </h1> |
| <div class="main-content__body-content"> |
| {{ content }} |
| </div> |
| </div> |
| </section> |
| <section class="site-section"> |
| <div class="main-content"> |
| <h2 class="main-content__heading">High-Level Programming Model</h2> |
| <p class="main-content__text main-content__text"> |
| 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. |
| </p> |
| <div class="main-content__columns"> |
| <div class="main-content__column"> |
| <img class="main-content__image" |
| src="{{ site.github.url }}/images/illustration-openwhisk-architecture.svg" |
| alt="Apache OpenWhisk architecture"> |
| </div> |
| <div class="main-content__column"> |
| <h3 class="main-content__sub-heading"> |
| Event Sources |
| </h3> |
| <p class="main-content__text main-content__text--no-top-margin"> |
| Event sources, such as devices, queues, databases, and webhooks, emit |
| classes of events in the form of triggers. |
| </p> |
| <h3 class="main-content__sub-heading"> |
| Triggers |
| </h3> |
| <p class="main-content__text main-content__text--no-top-margin"> |
| Triggers are the class of events (including device readings, published |
| messages, and data changes) that are emitted by event sources. |
| </p> |
| <h3 class="main-content__sub-heading"> |
| Actions |
| </h3> |
| <p class="main-content__text main-content__text--no-top-margin"> |
| 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. |
| </p> |
| <h3 class="main-content__sub-heading"> |
| Rules |
| </h3> |
| <p class="main-content__text main-content__text--no-top-margin"> |
| Rules represent the declarative association between a trigger and an |
| action, defining which action(s) should be executed in response to |
| an event. |
| </p> |
| <h3 class="main-content__sub-heading"> |
| Packages |
| </h3> |
| <p class="main-content__text main-content__text--no-top-margin"> |
| Packages encapsulate external services in a reusable manner and |
| assemble them into triggers and actions. |
| </p> |
| </div> |
| </div> |
| </div> |
| </section> |
| <section class="site-section site-section--gray"> |
| <div class="main-content"> |
| <div class="main-content__body-content"> |
| 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. |
| </div> |
| <a href="http://incubator.apache.org/"><img class="main-content__image" |
| src="{{ site.github.url }}/images/apache-incubator-egg-logo.png" |
| alt="Apache Incubator logo"></a> |
| </div> |
| </section> |