Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 949DF200BB6 for ; Fri, 4 Nov 2016 14:26:39 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 933B7160AE9; Fri, 4 Nov 2016 13:26:39 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id D924E160AE8 for ; Fri, 4 Nov 2016 14:26:38 +0100 (CET) Received: (qmail 13176 invoked by uid 500); 4 Nov 2016 13:26:38 -0000 Mailing-List: contact cvs-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: general@incubator.apache.org Delivered-To: mailing list cvs@incubator.apache.org Received: (qmail 13167 invoked by uid 99); 4 Nov 2016 13:26:38 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 04 Nov 2016 13:26:38 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 9F44CC1052 for ; Fri, 4 Nov 2016 13:26:37 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -1.999 X-Spam-Level: X-Spam-Status: No, score=-1.999 tagged_above=-999 required=6.31 tests=[KAM_LAZY_DOMAIN_SECURITY=1, RP_MATCHES_RCVD=-2.999] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id EW-rCk_Izbij for ; Fri, 4 Nov 2016 13:26:35 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTP id D937C5F3BE for ; Fri, 4 Nov 2016 13:26:34 +0000 (UTC) Received: from moin-vm.apache.org (moin-vm.apache.org [163.172.69.106]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 9C0C1E0045 for ; Fri, 4 Nov 2016 13:26:33 +0000 (UTC) Received: from moin-vm.apache.org (localhost [IPv6:::1]) by moin-vm.apache.org (ASF Mail Server at moin-vm.apache.org) with ESMTP id ED1D38024A for ; Fri, 4 Nov 2016 14:26:29 +0100 (CET) MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable From: Apache Wiki To: Apache Wiki Date: Fri, 04 Nov 2016 13:26:29 -0000 Message-ID: <147826598988.12933.753435998157482552@moin-vm.apache.org> Subject: =?utf-8?q?=5BIncubator_Wiki=5D_Update_of_=22OpenWhiskProposal=22_by_Felix?= =?utf-8?q?Meschberger?= Auto-Submitted: auto-generated archived-at: Fri, 04 Nov 2016 13:26:39 -0000 Dear Wiki user, You have subscribed to a wiki page or wiki category on "Incubator Wiki" for= change notification. The "OpenWhiskProposal" page has been changed by FelixMeschberger: https://wiki.apache.org/incubator/OpenWhiskProposal?action=3Ddiff&rev1=3D7&= rev2=3D8 Comment: Restructure API Gateway references. It is expected that the API Gateway wil= l be refactored with additional code donated by IBM during incubation. Specifically, every architectural component service of the OpenWhisk plat= form (e.g., Controller, Invokers, Messaging, Router, Catalog, API Gateway, = etc.) all is designed to be run and scaled as a Docker container. In additi= on, OpenWhisk uniquely leverages aspects of Docker engine to manage, load b= alance and scale supported OpenWhisk runtime environments (e.g., JavaScript= , Python, Swift, Java, etc.), that run Serverless functional code within In= voker compute instances, using Docker containers. = OpenWhisk's containerized design tenants not only allows it to be hosted = in various IaaS, PaaS Clouds platforms that support Docker containers, but = also achieves the high expectation of the Serverless computing experience b= y masking all aspects of traditional resource specification and configurati= on from the end user simplifying and accelerating Cloud application develop= ment. - In order to enable HTTP requests as a source of events, and thus the crea= tion of Serverless microservices that expose REST APIs, OpenWhisk includes = an API Gateway that performs tasks like request routing, throttling and log= ging. + In order to enable HTTP requests as a source of events, and thus the crea= tion of Serverless microservices that expose REST APIs, OpenWhisk includes = an API Gateway that performs tasks like security, request routing, throttli= ng, and logging. = =3D=3D Rationale =3D=3D = @@ -49, +49 @@ Issue tracking and project governance (milestones, epics) are also manage= d through GitHub Issues and visualized through ZenHub. All =E2=80=9Cpull=E2= =80=9D requests, once passing automated tests run by TravisCI, are reviewed= by =E2=80=9Ccore=E2=80=9D contributors with =E2=80=9Cwrite=E2=80=9D privil= eges. IBM has also setup private staging servers to =E2=80=9Cstress=E2=80= =9D test the platform performance under load and over extended periods of t= ime before being merged into the main code branch. As part of the incubatio= n process we would make these staging tests public and have them be run by = Apache. = Currently, the project is not officially versioned and is considered an = =E2=80=9Cexperimental beta=E2=80=9D, but is marching towards milestone 10 t= hat aligns with what is considered to be a =E2=80=9Cbeta=E2=80=9D the end o= f October and another milestone 11 end of November 2016 which is considered= =E2=80=9CGA=E2=80=9D content for the =E2=80=9Ccore=E2=80=9D platform. Agai= n, we would very much like to adopt an Apache community system for deciding= on milestones, constituent epics (features) along with dates a versioning = plan and communicate effectively using email lists, IRC and a project homep= age (which is currently lacking). - In addition to the OpenWhisk core runtime, the API Gateway components of = the projects are published in a separate GitHub project (https://github.com= /adobe-apiplatform/apigateway) under the MIT license. The API Gateway compo= nents were initially released in August 2015. These components include func= tionality for: = + In addition to the OpenWhisk core runtime, IBM and Adobe plan to collabor= ate and contribute to the API Gateway component under an open framework wit= h the Apache community. The API Gateway Framework component would provide e= ssential support for a Serverless environment including container services,= platform services and traditional runtimes and provides functionality for = API security, request validation, request routing, rate limiting, logging, = caching and load balancing. - * Request validation - * Request tracking - * Caching - * Logging - * Load Balancing = =3D=3D Meritocracy =3D=3D = @@ -185, +180 @@ Place to submit interactive tutorials for OpenWhisk, its CLI = and packages. Currently, contains Javascript-based tutorial for learning th= e OpenWhisk CLI. https://github.com/openwhisk/openwhisk-vscode This is a prototype extension for Visual Studio Code that ena= bles complete round trip cycles for authoring OpenWhisk actions inside the = editor. - * API Gateway repos.: + * API Gateway Framework repositories: + = + There are existing discussions between IBM and Adobe about creati= ng a comprehensive API Gateway Framework that can support community contrib= utions. We plan to move these discussions into the Apache community and inv= ite participation in shaping this framework to ensure the best possible sol= ution for Serverless. At this time, the existing Adobe API Gateway provide= s a valuable set of modularized components that will be part of this framew= ork and the initial submission: + = https://github.com/adobe-apiplatform/apigateway The main API Gateway repository containing basic configuratio= n files and a Dockerfile to build all modules into a single container. + = + Under this repository, you will find complete and conformant code= modules for the following functions: + * Request Validation (e.g., OAuth, API-KEY) and tracking, + * Configuration syncing with multiple Cloud storage solutions, + * API Request Caching and Mgmt., + * Asynchronous logging (API traffic), + * ZeroMQ adapter with logger, + * NGINX extensions (i.e., AWS SDK) - https://github.com/adobe-apiplatform/api-gateway-request-validati= on - Module to validate the incoming API requests with support for= OAuth 2.0, OAuth 1.0, and API-KEYs. - https://github.com/adobe-apiplatform/api-gateway-request-tracking - Support for Throttling & Rate Limiting - https://github.com/adobe-apiplatform/api-gateway-config-supervisor - Syncs config files from Amazon S3, Google Drive, Dropbox, Ama= zon Cloud Drive reloading the API Gateway with the updates - https://github.com/adobe-apiplatform/api-gateway-cachemanager - API request caching. This module manages multiple cache store= s ( i.e. Redis cache, in-memory cache ) - https://github.com/adobe-apiplatform/api-gateway-async-logger - Performant asynchronous logger used for capturing usage data = based on the incoming API traffic - https://github.com/adobe-apiplatform/api-gateway-zmq-adaptor - ZeroMQ Adaptor for the API Gateway - https://github.com/adobe-apiplatform/api-gateway-zmq-logger - Logging module for ZeroMQ - https://github.com/adobe-apiplatform/api-gateway-aws - AWS SDK for NGINX - https://github.com/adobe-apiplatform/api-gateway-hmac - HMAC support for Lua with multiple algorithms, via OpenSSL + * HMAC support for Lua (multiple algorithms, via OpenSSL) + = + During the incubation, this code will likely be restructured to a= ccommodate additional code from other sources as agreed to by Apache and th= e PPMC. = =3D Source and Intellectual Property Submission Plan =3D =20 --------------------------------------------------------------------- To unsubscribe, e-mail: cvs-unsubscribe@incubator.apache.org For additional commands, e-mail: cvs-help@incubator.apache.org