SlideShare a Scribd company logo
1 of 44
ServerlessConf London 2016
IBM Bluemix OpenWhisk
The Future of Cloud Programming:
Event-driven and Serverless Programming with OpenWhisk
Dr. Andreas Nauerz, Technical Product Manager @AndreasNauerz
Michael Behrendt, Distinguished Engineer @michael_beh
Please Note:
2
• IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole
discretion.
• Information regarding potential future products is intended to outline our general product direction and it should not be relied on in
making a purchasing decision.
• The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any
material, code or functionality. Information about potential future products may not be incorporated into any contract.
• The development, release, and timing of any future features or functionality described for our products remains at our sole
discretion.
• Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual
throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the
amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed.
Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.
Agenda
• OpenWhisk in a nutshell & comparison to traditional models
• How OpenWhisk works, how it has been build & usage scenarios
• Programming model
• Live demo
• What‘s new?
• Summary & Questions
3
OpenWhisk* in a nutshell
„Event-action platform to execute code in response to events“
Delivered as open source & managed service on IBM Bluemix
* whisk (v): to move nimbly and quickly (source: merriam-webster.com)
OpenWhisk* in a nutshell
„Event-action platform to execute code in response to events“
Available as beta and for free
* whisk (v): to move nimbly and quickly (source: merriam-webster.com)
https://console.ng.bluemix.net/openwhisk/
OpenWhisk: Comparison to traditional models
Swift
Application
Container VMCF
22
Polling
1b1b
Request
1a1a
• Traditional model
– Continous polling due to missing event programming
model
– Charges even when idling due to poor utilization
– Worry about scaling
• When to scale? (mem-, cpu-, response time-driven)
• How fast to scale?
– Worry about resiliency
• At least 2 processes for HA (driving cost)
• Deployment in multiple regions (driving cost)
• Keep them running & healthy
Process & idle
OpenWhisk: Comparison to traditional models
• OpenWhisk
– Introduces event programming model
– Charges only for what is used due to optimal
utilization
– Scales inherently
• One process per request
– No cost overhead for resiliency
• No long running process for HA
Trigger
11
Running
action
Running
action
Running
action
33
Deploy action within millisecs,
run it,
free up resources
OpenWhisk
Engine
22 Pool of actions
Swift DockerJS Python
Java
*
* work in progress
OpenWhisk in a nutshell
Serverless deployment & operations model
Optimal utilization & granular pricing
Scales on a per-request basis
OpenWhisk in a nutshell
Flexible programming model
Support for different invocation models
Blocking, non-blocking, periodic
Polyglot support
Support for multiple runtimes: JS/NodeJS, Swift, Python, Java*, Docker
Community efforts: Go, Haskell, Scala, …
Supports higher-level programming constructs
Parameter binding
Chaining/sequencing
Debugging*
* work in progress
OpenWhisk in a nutshell
Open engine & open event emitter/consumer ecosystem
Open interface for event emitters
Implemented in Scala & implemented based upon open technologies
Docker, Kafka, Consul, …
Community efforts to integrate with open tools
Serverless Framwork*, VS Code, NodeRED, Jupyter Notebooks , …
Apache Incubator proposal is out!
Submitted jointly with partners!
* work in progress
OpenWhisk: Another way to build apps…
Build your apps, your way.
Use a combination of the most prominent open-source compute
technologies to power your apps. Then, let Bluemix handle the rest.
Ease of getting started Full stack Control
OpenWhisk
Event-driven apps,
deployed in a serverless
environment.
Instant Runtimes
App-centric runtime
environments based on
Cloud Foundry.
IBM Containers
Portable and consistent
delivery of your app
without having to manage
an OS.
Virtual Machines
Get the most flexibility
and control over your
environment with VMs.
OpenWhisk: How does it work?
* work in progress
}
11
Event Providers
Cloudant
Push Notifcations
Kafka*
…
…
Data event occurs, e.g.
-Commit on a Git Repository
-CRUD operation on Cloudant
-….
…
OpenWhisk
Trigger execution
of associated
OpenWhisk action
22
Swift DockerJS Python Java*
OpenWhisk: How does it work?
Incoming HTTP request, e.g. HTTP GET
openwhisk.ng.bluemix.net/api/v1/<namespace>/actions/getCustomers
11
Browser
Mobile App
Web App
OpenWhisk
22 Invoke associated
OpenWhisk action
„getCustomers“
Swift DockerJS Python Java*
Variety of
languages
Variety of
languages
* work in progress
OpenWhisk: How does it work?
Coming soon...
• API Gateway is build based on contributions from Adobe & IBM
leveraging technologies like Nginx & IBM’s microgateway
• Allows to create, run, manage and secure APIs and microservices
• Combined with OpenWhisk it provides an easy way to build
backends without the need to manage servers by mapping APIs to
actions
• Both technologies together allow to quickly develop & deploy
serverless APIs, microservices & SPAs
Incoming HTTP request, e.g. HTTP GET
api-gw.mybluemix.net/…/getCustomers
11
Browser
Mobile App
Web App
22
OpenWhisk
33 Invoke associated
OpenWhisk action
“getCustomers“
Swift DockerJS Python Java*
* work in progress
OpenWhisk: How does it work?
Coming soon...
- API Gateway takes care of…
- security (authenticate, authorize, threat protect, validate)
- control (rate limiting, response caching)
- mediation
- parameter mapping
- schema validation
- … and supports e.g. different verbs (Get, Post, Put, Delete, …)
Incoming HTTP request, e.g. HTTP GET
api-gw.mybluemix.net/…/getCustomers
11
Browser
Mobile App
Web App
22
OpenWhisk
33 Invoke associated
OpenWhisk action
„getCustomers“
Swift DockerJS Python Java*
* work in progress
OpenWhisk: How does it work?
Coming soon...
• OpenWhisk CLI is extended to to allow user to define routes for
actions
$ wsk action create hello hello.js
$ wsk api create GET /v1/hello hello
Route URL:
https://api-gw.mybluemix.net/api/ /nsuuid/v1/hello
$ curl –XGET https://api-gw.mybluemix.net/api/ /nsuuid/v1/hello
{ message: ”Hello World” }
11
Browser
Mobile App
Web App
22
OpenWhisk
33 Invoke associated
OpenWhisk action
„getCustomers“
Swift DockerJS Python Java*
* work in progress
Incoming HTTP request, e.g. HTTP GET
api-gw.mybluemix.net/…/getCustomers
OpenWhisk architecture
Trigger
Package
Feed
Package
Feed
Package
Feed
Package
Feed
REST
CLI iOS SDK
CRUD triggers, actions, and rules
Invoke actions
UI
Action
NodeJS
Action
Swift
Action
Docker
Rule
Rule
Rule
Action
NodeJS
Action
Docker
Service ecosytem
Bluemix services
3rd party services
Self-enabled services
Chain Chain Invoke
Docker (and potentially other abstractions going forward)
API Gateway*
* work in progress
Some usage Scenarios
• Microservices-based apps / APIs
• Mobile Backends
• Data (Stream) Processing
• IoT
• Cognitive
• Bots
Real-world customer scenario
OpenWhisk: Topology in OpenSource
20
Controller
…Invoker InvokerInvoker
Cloudant
OpenWhisk: Topology in Bluemix
21
ELK-Stack
soonsoon
Controller
Integration
Service
soonsoon
…InvokerInvokerInvoker
Monitoring
soonsoon
OpenWhisk: Usage of Docker
• Isolation of actions
• Control over consumed resources of each container
22
AA =
wsk action invoke docker run
≈
OpenWhisk: Container startup
23
Start container
docker run
Initialize
/init
Run
/run
cold container
Start container
docker run
Initialize
/init
Run
/run
OpenWhisk: Container startup
24
pre-warmed container
Start container
docker run
Initialize
/init
Run
/run
OpenWhisk: Container startup
25
warm container
OpenWhisk: Container startup optimization
• Performance is king.
26
cold container pre-warmed container warm container
faster
Programming model
• Services define the events they emit as triggers, and developers
associate the actions to handle the events via rules
• The developer only needs to care about implementing the desired
application logic - the system handles the rest
TT RR AA
Programming model
Debugging actions*AA
• Allows to…
– debug actions locally
– inspect parameter values
– edit code & push changes
• Supports debugging…
– NodeJS, Python and Swift actions
* work in progress
Programming model
Debugging actions*AA
* work in progress
https://github.com/openwhisk/openwhisk-debugger
Programming model
Actions: Can be chained to create sequences to increase flexibility and
foster reuse
AA
AA
AA := A1
A1 + A2
A2 + A3
A3
AB
AB := A2
A2 + A1
A1 + A3
A3
AC
AC := A3
A3 + A1
A1 + A2
A2
Programming model
Rules: „An association of a trigger and an action“RR
RR := TT AA
Event & Action Providers
Open
Source
Third
Party
Yours
Push
Notifications
webhook
AA
forecast
translate
languageId
textToSpeech
changes
TT
sendMessage
databaseCreate
documentRead
...
Websocket send
webhook
post
myAction myFeed
AA TT
What’s new?
• Community effort to integrate with open tools: NodeRED
• NodeRED is all about automating flows to orchestrate calls to
different service APIs
– Usually triggered by calls from external systems or devices
– Runs within a long-running single node process, with a dedicated amount of CPU & memory
being allocated
• OpenWhisk is all about executing code (custom logic) in response to events on a scalable
platform, with a dedicated amount of CPU & memory being allocated per-request
• NodeRED and OpenWhisk complement each other
– Use NodeRED to graphically create flows, automating a series of tasks in a kind of workflow
– Use OpenWhisk to execute custom logic (requiring some kind of CPU- or memory bound
operation) triggered from within NodeRED
What’s new?
• Community effort to integrate
with open tools: VS Code
extension
• Eases development with OpenWhisk
by supporting the entire development
cycle (list, create, update, invoke,
actions etc.) without the need to
leave the IDE
• Extension works for actions written in
different languages (like JS and
Swift) and on different platforms (like
Windows, Mac, and Linux)
Live demo
What’s (else is) new?
• Graduated from experimental to public beta on 09/09
– programming language support for Node 6, Python, and pre-releases of Swift 3, Java*
– support for uploading (Node) dependencies
– new UI for editing, monitoring, and configuring integrations
– simple GO-based binary CLI available - cross platform
– a growing list of interesting open-source applications on github, including DarkVision
(https://github.com/IBM-Bluemix/openwhisk-darkvisionapp) and Skylink
(https://github.com/IBM-Bluemix/skylink)
* work in progress
Join us today
• You want to try OpenWhisk on your own?
– Want to try out our IBM Bluemix OpenWhisk offering for free?
• Sign-up today at: https://console.ng.bluemix.net/openwhisk/
– Want to try out our open-source OpenWhisk offering?
• Visit: https://developer.ibm.com/openwhisk/
Learn more
• OpenWhisk Developer Center (focuses on our open-source project)
https://developer.ibm.com/openwhisk/
• OpenWhisk Blog
https://developer.ibm.com/openwhisk/blogs/
• OpenWhisk on Github
https://github.com/openwhisk/openwhisk/
• OpenWhisk official documentation on Github
https://github.com/openwhisk/openwhisk/blob/master/docs/README.md
Learn more
• OpenWhisk on Twitter
https://twitter.com/openwhisk
• OpenWhisk on Slack
https://dwopen.slack.com (channel: openwhisk)
To join go here:
http://slackindwo.mybluemix.net/
• OpenWhisk additional material on Slideshare
http://www.slideshare.net/OpenWhisk
• OpenWhisk additional material on Youtube
https://www.youtube.com/channel/UCbzgShnQk8F43NKsvEYA1SA
• Other OpenWhisk material
https://github.com/openwhisk/awesome-openwhisk
Learn more
• OpenWhisk past and upcoming events
https://developer.ibm.com/openwhisk/events/
Questions?
Notices and Disclaimers
42
Copyright © 2016 by International Business Machines Corporation (IBM). No part of this document may be reproduced or transmitted in any form without written permission
from IBM.
U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM.
Information in these presentations (including information relating to products that have not yet been announced by IBM) has been reviewed for accuracy as of the date of
initial publication and could include unintentional technical or typographical errors. IBM shall have no responsibility to update this information. THIS DOCUMENT IS
DISTRIBUTED "AS IS" WITHOUT ANY WARRANTY, EITHER EXPRESS OR IMPLIED. IN NO EVENT SHALL IBM BE LIABLE FOR ANY DAMAGE ARISING FROM THE
USE OF THIS INFORMATION, INCLUDING BUT NOT LIMITED TO, LOSS OF DATA, BUSINESS INTERRUPTION, LOSS OF PROFIT OR LOSS OF OPPORTUNITY. IBM
products and services are warranted according to the terms and conditions of the agreements under which they are provided.
Any statements regarding IBM's future direction, intent or product plans are subject to change or withdrawal without notice.
Performance data contained herein was generally obtained in a controlled, isolated environments. Customer examples are presented as illustrations of how those
customers have used IBM products and the results they may have achieved. Actual performance, cost, savings or other results in other operating environments may vary.
References in this document to IBM products, programs, or services does not imply that IBM intends to make such products, programs or services available in all countries
in which IBM operates or does business.
Workshops, sessions and associated materials may have been prepared by independent session speakers, and do not necessarily reflect the views of IBM. All materials
and discussions are provided for informational purposes only, and are neither intended to, nor shall constitute legal or other guidance or advice to any individual participant
or their specific situation.
It is the customer’s responsibility to insure its own compliance with legal requirements and to obtain advice of competent legal counsel as to the identification and
interpretation of any relevant laws and regulatory requirements that may affect the customer’s business and any actions the customer may need to take to comply with such
laws. IBM does not provide legal advice or represent or warrant that its services or products will ensure that the customer is in compliance with any law
Notices and Disclaimers Con’t.
43
Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not
tested those products in connection with this publication and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products.
Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. IBM does not warrant the quality of any third-party products, or the
ability of any such third-party products to interoperate with IBM’s products. IBM EXPRESSLY DISCLAIMS ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING BUT
NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
The provision of the information contained h erein is not intended to, and does not, grant any right or license under any IBM patents, copyrights, trademarks or other
intellectual property right.
IBM, the IBM logo, ibm.com, Aspera®, Bluemix, Blueworks Live, CICS, Clearcase, Cognos®, DOORS®, Emptoris®, Enterprise Document Management System™, FASP®,
FileNet®, Global Business Services ®, Global Technology Services ®, IBM ExperienceOne™, IBM SmartCloud®, IBM Social Business®, Information on Demand, ILOG,
Maximo®, MQIntegrator®, MQSeries®, Netcool®, OMEGAMON, OpenPower, PureAnalytics™, PureApplication®, pureCluster™, PureCoverage®, PureData®,
PureExperience®, PureFlex®, pureQuery®, pureScale®, PureSystems®, QRadar®, Rational®, Rhapsody®, Smarter Commerce®, SoDA, SPSS, Sterling Commerce®,
StoredIQ, Tealeaf®, Tivoli®, Trusteer®, Unica®, urban{code}®, Watson, WebSphere®, Worklight®, X-Force® and System z® Z/OS, are trademarks of International Business
Machines Corporation, registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM
trademarks is available on the Web at "Copyright and trademark information" at: www.ibm.com/legal/copytrade.shtml.
ServerlessConf London 2016
Thank You

More Related Content

What's hot

IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: The journey c...
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: The journey c...IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: The journey c...
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: The journey c...OpenWhisk
 
Apache OpenWhisk - KRnet 2017
Apache OpenWhisk - KRnet 2017Apache OpenWhisk - KRnet 2017
Apache OpenWhisk - KRnet 2017Jin Gi Kong
 
Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...
Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...
Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...Daniel Krook
 
Going Serverless with OpenWhisk
Going Serverless with OpenWhiskGoing Serverless with OpenWhisk
Going Serverless with OpenWhiskAlex Glikson
 
OpenWhisk - A platform for cloud native, serverless, event driven apps
OpenWhisk - A platform for cloud native, serverless, event driven appsOpenWhisk - A platform for cloud native, serverless, event driven apps
OpenWhisk - A platform for cloud native, serverless, event driven appsDaniel Krook
 
Serverless architectures built on an open source platform
Serverless architectures built on an open source platformServerless architectures built on an open source platform
Serverless architectures built on an open source platformDaniel Krook
 
OpenWhisk: Event-driven Design
OpenWhisk: Event-driven DesignOpenWhisk: Event-driven Design
OpenWhisk: Event-driven DesignAltoros
 
Bluemix 로 접근하는 DevOps - Cognitive Cloud Connect
Bluemix 로 접근하는 DevOps - Cognitive Cloud ConnectBluemix 로 접근하는 DevOps - Cognitive Cloud Connect
Bluemix 로 접근하는 DevOps - Cognitive Cloud ConnectJin Gi Kong
 
Containers vs serverless - Navigating application deployment options
Containers vs serverless - Navigating application deployment optionsContainers vs serverless - Navigating application deployment options
Containers vs serverless - Navigating application deployment optionsDaniel Krook
 
Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud FunctionsBuilding serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud FunctionsDaniel Krook
 
Serverless APIs with Apache OpenWhisk
Serverless APIs with Apache OpenWhiskServerless APIs with Apache OpenWhisk
Serverless APIs with Apache OpenWhiskDaniel Krook
 
Build a cloud native app with OpenWhisk
Build a cloud native app with OpenWhiskBuild a cloud native app with OpenWhisk
Build a cloud native app with OpenWhiskDaniel Krook
 
OpenWhisk Meetup - Austin, TX 07/2017
OpenWhisk Meetup - Austin, TX 07/2017OpenWhisk Meetup - Austin, TX 07/2017
OpenWhisk Meetup - Austin, TX 07/2017Carlos Santana
 
The Serverless Paradigm, OpenWhisk and FIWARE
The Serverless Paradigm, OpenWhisk and FIWAREThe Serverless Paradigm, OpenWhisk and FIWARE
The Serverless Paradigm, OpenWhisk and FIWAREAlex Glikson
 
Building serverless applications with Apache OpenWhisk
Building serverless applications with Apache OpenWhiskBuilding serverless applications with Apache OpenWhisk
Building serverless applications with Apache OpenWhiskDaniel Krook
 
Serverless Architectures in Banking: OpenWhisk on IBM Bluemix at Santander
Serverless Architectures in Banking: OpenWhisk on IBM Bluemix at SantanderServerless Architectures in Banking: OpenWhisk on IBM Bluemix at Santander
Serverless Architectures in Banking: OpenWhisk on IBM Bluemix at SantanderDaniel Krook
 
Serverless apps with OpenWhisk
Serverless apps with OpenWhiskServerless apps with OpenWhisk
Serverless apps with OpenWhiskDaniel Krook
 
OpenWhisk on IBM Bluemix for the Industrial Internet
OpenWhisk on IBM Bluemix for the Industrial InternetOpenWhisk on IBM Bluemix for the Industrial Internet
OpenWhisk on IBM Bluemix for the Industrial InternetAltoros
 
Out of the Blue: Getting started with IBM Bluemix development
Out of the Blue: Getting started with IBM Bluemix developmentOut of the Blue: Getting started with IBM Bluemix development
Out of the Blue: Getting started with IBM Bluemix developmentOliver Busse
 

What's hot (19)

IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: The journey c...
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: The journey c...IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: The journey c...
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: The journey c...
 
Apache OpenWhisk - KRnet 2017
Apache OpenWhisk - KRnet 2017Apache OpenWhisk - KRnet 2017
Apache OpenWhisk - KRnet 2017
 
Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...
Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...
Cloud Native Architectures with an Open Source, Event Driven, Serverless Plat...
 
Going Serverless with OpenWhisk
Going Serverless with OpenWhiskGoing Serverless with OpenWhisk
Going Serverless with OpenWhisk
 
OpenWhisk - A platform for cloud native, serverless, event driven apps
OpenWhisk - A platform for cloud native, serverless, event driven appsOpenWhisk - A platform for cloud native, serverless, event driven apps
OpenWhisk - A platform for cloud native, serverless, event driven apps
 
Serverless architectures built on an open source platform
Serverless architectures built on an open source platformServerless architectures built on an open source platform
Serverless architectures built on an open source platform
 
OpenWhisk: Event-driven Design
OpenWhisk: Event-driven DesignOpenWhisk: Event-driven Design
OpenWhisk: Event-driven Design
 
Bluemix 로 접근하는 DevOps - Cognitive Cloud Connect
Bluemix 로 접근하는 DevOps - Cognitive Cloud ConnectBluemix 로 접근하는 DevOps - Cognitive Cloud Connect
Bluemix 로 접근하는 DevOps - Cognitive Cloud Connect
 
Containers vs serverless - Navigating application deployment options
Containers vs serverless - Navigating application deployment optionsContainers vs serverless - Navigating application deployment options
Containers vs serverless - Navigating application deployment options
 
Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud FunctionsBuilding serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
 
Serverless APIs with Apache OpenWhisk
Serverless APIs with Apache OpenWhiskServerless APIs with Apache OpenWhisk
Serverless APIs with Apache OpenWhisk
 
Build a cloud native app with OpenWhisk
Build a cloud native app with OpenWhiskBuild a cloud native app with OpenWhisk
Build a cloud native app with OpenWhisk
 
OpenWhisk Meetup - Austin, TX 07/2017
OpenWhisk Meetup - Austin, TX 07/2017OpenWhisk Meetup - Austin, TX 07/2017
OpenWhisk Meetup - Austin, TX 07/2017
 
The Serverless Paradigm, OpenWhisk and FIWARE
The Serverless Paradigm, OpenWhisk and FIWAREThe Serverless Paradigm, OpenWhisk and FIWARE
The Serverless Paradigm, OpenWhisk and FIWARE
 
Building serverless applications with Apache OpenWhisk
Building serverless applications with Apache OpenWhiskBuilding serverless applications with Apache OpenWhisk
Building serverless applications with Apache OpenWhisk
 
Serverless Architectures in Banking: OpenWhisk on IBM Bluemix at Santander
Serverless Architectures in Banking: OpenWhisk on IBM Bluemix at SantanderServerless Architectures in Banking: OpenWhisk on IBM Bluemix at Santander
Serverless Architectures in Banking: OpenWhisk on IBM Bluemix at Santander
 
Serverless apps with OpenWhisk
Serverless apps with OpenWhiskServerless apps with OpenWhisk
Serverless apps with OpenWhisk
 
OpenWhisk on IBM Bluemix for the Industrial Internet
OpenWhisk on IBM Bluemix for the Industrial InternetOpenWhisk on IBM Bluemix for the Industrial Internet
OpenWhisk on IBM Bluemix for the Industrial Internet
 
Out of the Blue: Getting started with IBM Bluemix development
Out of the Blue: Getting started with IBM Bluemix developmentOut of the Blue: Getting started with IBM Bluemix development
Out of the Blue: Getting started with IBM Bluemix development
 

Viewers also liked

Migrate Oracle WebLogic Applications onto a Containerized Cloud Data Center
Migrate Oracle WebLogic Applications onto a Containerized Cloud Data CenterMigrate Oracle WebLogic Applications onto a Containerized Cloud Data Center
Migrate Oracle WebLogic Applications onto a Containerized Cloud Data CenterJingnan Zhou
 
Interesting Places in Poland
Interesting Places in PolandInteresting Places in Poland
Interesting Places in Polandwojcik_agnieszka
 
What's new in oracle ORAchk & EXAchk 12.2.0.1.2
What's new in oracle ORAchk & EXAchk 12.2.0.1.2What's new in oracle ORAchk & EXAchk 12.2.0.1.2
What's new in oracle ORAchk & EXAchk 12.2.0.1.2Gareth Chapman
 
Microsoft Microservices
Microsoft MicroservicesMicrosoft Microservices
Microsoft MicroservicesChase Aucoin
 
(ARC401) Cloud First: New Architecture for New Infrastructure
(ARC401) Cloud First: New Architecture for New Infrastructure(ARC401) Cloud First: New Architecture for New Infrastructure
(ARC401) Cloud First: New Architecture for New InfrastructureAmazon Web Services
 
IoT and Big Data
IoT and Big DataIoT and Big Data
IoT and Big Datasabnees
 
Introduction to Data Modeling in Cassandra
Introduction to Data Modeling in CassandraIntroduction to Data Modeling in Cassandra
Introduction to Data Modeling in CassandraJim Hatcher
 
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlow
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlowCloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlow
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlowCohesive Networks
 
A BRIEF OVERVIEW ON WILDLIFE MANAGEMENT
A BRIEF OVERVIEW ON WILDLIFE MANAGEMENTA BRIEF OVERVIEW ON WILDLIFE MANAGEMENT
A BRIEF OVERVIEW ON WILDLIFE MANAGEMENTPintu Kabiraj
 
All you need to know about Orient Me
All you need to know about Orient MeAll you need to know about Orient Me
All you need to know about Orient MeLetsConnect
 
Stormshield Visibility Center
Stormshield Visibility CenterStormshield Visibility Center
Stormshield Visibility CenterNRC
 
Microservices mit Java EE - am Beispiel von IBM Liberty
Microservices mit Java EE - am Beispiel von IBM LibertyMicroservices mit Java EE - am Beispiel von IBM Liberty
Microservices mit Java EE - am Beispiel von IBM LibertyMichael Hofmann
 
Streaming architecture with HDP & ELK
Streaming architecture with HDP & ELKStreaming architecture with HDP & ELK
Streaming architecture with HDP & ELKAlain Douangpraseuth
 
Deploy Microservices in the Real World
Deploy Microservices in the Real WorldDeploy Microservices in the Real World
Deploy Microservices in the Real WorldElana Krasner
 
Better Insights from Your Master Data - Graph Database LA Meetup
Better Insights from Your Master Data - Graph Database LA MeetupBetter Insights from Your Master Data - Graph Database LA Meetup
Better Insights from Your Master Data - Graph Database LA MeetupBenjamin Nussbaum
 
Expect the unexpected: Prepare for failures in microservices
Expect the unexpected: Prepare for failures in microservicesExpect the unexpected: Prepare for failures in microservices
Expect the unexpected: Prepare for failures in microservicesBhakti Mehta
 
Fluentd v1.0 in a nutshell
Fluentd v1.0 in a nutshellFluentd v1.0 in a nutshell
Fluentd v1.0 in a nutshellN Masahiro
 

Viewers also liked (20)

Security Realism in Education
Security Realism in EducationSecurity Realism in Education
Security Realism in Education
 
Migrate Oracle WebLogic Applications onto a Containerized Cloud Data Center
Migrate Oracle WebLogic Applications onto a Containerized Cloud Data CenterMigrate Oracle WebLogic Applications onto a Containerized Cloud Data Center
Migrate Oracle WebLogic Applications onto a Containerized Cloud Data Center
 
Interesting Places in Poland
Interesting Places in PolandInteresting Places in Poland
Interesting Places in Poland
 
What's new in oracle ORAchk & EXAchk 12.2.0.1.2
What's new in oracle ORAchk & EXAchk 12.2.0.1.2What's new in oracle ORAchk & EXAchk 12.2.0.1.2
What's new in oracle ORAchk & EXAchk 12.2.0.1.2
 
Diabetes mellitus
Diabetes mellitusDiabetes mellitus
Diabetes mellitus
 
Microsoft Microservices
Microsoft MicroservicesMicrosoft Microservices
Microsoft Microservices
 
(ARC401) Cloud First: New Architecture for New Infrastructure
(ARC401) Cloud First: New Architecture for New Infrastructure(ARC401) Cloud First: New Architecture for New Infrastructure
(ARC401) Cloud First: New Architecture for New Infrastructure
 
IoT and Big Data
IoT and Big DataIoT and Big Data
IoT and Big Data
 
Introduction to Data Modeling in Cassandra
Introduction to Data Modeling in CassandraIntroduction to Data Modeling in Cassandra
Introduction to Data Modeling in Cassandra
 
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlow
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlowCloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlow
Cloud Expo New York: OpenFlow Is SDN Yet SDN Is Not Only OpenFlow
 
A BRIEF OVERVIEW ON WILDLIFE MANAGEMENT
A BRIEF OVERVIEW ON WILDLIFE MANAGEMENTA BRIEF OVERVIEW ON WILDLIFE MANAGEMENT
A BRIEF OVERVIEW ON WILDLIFE MANAGEMENT
 
Spring Batch
Spring BatchSpring Batch
Spring Batch
 
All you need to know about Orient Me
All you need to know about Orient MeAll you need to know about Orient Me
All you need to know about Orient Me
 
Stormshield Visibility Center
Stormshield Visibility CenterStormshield Visibility Center
Stormshield Visibility Center
 
Microservices mit Java EE - am Beispiel von IBM Liberty
Microservices mit Java EE - am Beispiel von IBM LibertyMicroservices mit Java EE - am Beispiel von IBM Liberty
Microservices mit Java EE - am Beispiel von IBM Liberty
 
Streaming architecture with HDP & ELK
Streaming architecture with HDP & ELKStreaming architecture with HDP & ELK
Streaming architecture with HDP & ELK
 
Deploy Microservices in the Real World
Deploy Microservices in the Real WorldDeploy Microservices in the Real World
Deploy Microservices in the Real World
 
Better Insights from Your Master Data - Graph Database LA Meetup
Better Insights from Your Master Data - Graph Database LA MeetupBetter Insights from Your Master Data - Graph Database LA Meetup
Better Insights from Your Master Data - Graph Database LA Meetup
 
Expect the unexpected: Prepare for failures in microservices
Expect the unexpected: Prepare for failures in microservicesExpect the unexpected: Prepare for failures in microservices
Expect the unexpected: Prepare for failures in microservices
 
Fluentd v1.0 in a nutshell
Fluentd v1.0 in a nutshellFluentd v1.0 in a nutshell
Fluentd v1.0 in a nutshell
 

Similar to IBM Bluemix OpenWhisk: Serverless Conference 2016, London, UK: The Future of Cloud Programming

Andreas Nauerz and Michael Behrendt - Event Driven and Serverless Programming...
Andreas Nauerz and Michael Behrendt - Event Driven and Serverless Programming...Andreas Nauerz and Michael Behrendt - Event Driven and Serverless Programming...
Andreas Nauerz and Michael Behrendt - Event Driven and Serverless Programming...ServerlessConf
 
How to build a Distributed Serverless Polyglot Microservices IoT Platform us...
How to build a Distributed Serverless Polyglot Microservices IoT Platform us...How to build a Distributed Serverless Polyglot Microservices IoT Platform us...
How to build a Distributed Serverless Polyglot Microservices IoT Platform us...Animesh Singh
 
Apache OpenWhisk Serverless Computing
Apache OpenWhisk Serverless ComputingApache OpenWhisk Serverless Computing
Apache OpenWhisk Serverless ComputingUpkar Lidder
 
Serverless Apps with Open Whisk
Serverless Apps with Open Whisk Serverless Apps with Open Whisk
Serverless Apps with Open Whisk Dev_Events
 
The 'Serverless' Paradigm, OpenWhisk and FIWARE
The 'Serverless' Paradigm, OpenWhisk and FIWAREThe 'Serverless' Paradigm, OpenWhisk and FIWARE
The 'Serverless' Paradigm, OpenWhisk and FIWAREFIWARE
 
Kube con china_2019_7 missing factors for your production-quality 12-factor apps
Kube con china_2019_7 missing factors for your production-quality 12-factor appsKube con china_2019_7 missing factors for your production-quality 12-factor apps
Kube con china_2019_7 missing factors for your production-quality 12-factor appsShikha Srivastava
 
Using Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT ChallengesUsing Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT ChallengesIBM UrbanCode Products
 
Java Development on Bluemix
Java Development on BluemixJava Development on Bluemix
Java Development on BluemixRam Vennam
 
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...Lightbend
 
Mobile, Open Source, and the Drive to the Cloud
Mobile, Open Source, and the Drive to the CloudMobile, Open Source, and the Drive to the Cloud
Mobile, Open Source, and the Drive to the CloudDev_Events
 
Mobile, Open Source, & the Drive to the Cloud
Mobile, Open Source, & the Drive to the CloudMobile, Open Source, & the Drive to the Cloud
Mobile, Open Source, & the Drive to the CloudDev_Events
 
RTP Bluemix Meetup April 20th 2016
RTP Bluemix Meetup April 20th 2016RTP Bluemix Meetup April 20th 2016
RTP Bluemix Meetup April 20th 2016Tom Boucher
 
Microservices and Serverless Computing - OpenWhisk
Microservices and Serverless Computing - OpenWhiskMicroservices and Serverless Computing - OpenWhisk
Microservices and Serverless Computing - OpenWhiskVidyasagar Machupalli
 
Microservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing MicroservicesMicroservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing MicroservicesQAware GmbH
 
Swift at IBM: Mobile, open source and the drive to the cloud
Swift at IBM: Mobile, open source and the drive to the cloudSwift at IBM: Mobile, open source and the drive to the cloud
Swift at IBM: Mobile, open source and the drive to the cloudDev_Events
 
Open stack ocata summit enabling aws lambda-like functionality with openstac...
Open stack ocata summit  enabling aws lambda-like functionality with openstac...Open stack ocata summit  enabling aws lambda-like functionality with openstac...
Open stack ocata summit enabling aws lambda-like functionality with openstac...Shaun Murakami
 
Hyperledger Composer architecture
Hyperledger Composer architectureHyperledger Composer architecture
Hyperledger Composer architectureSimon Stone
 
Serverless forwardjs
Serverless forwardjsServerless forwardjs
Serverless forwardjsUpkar Lidder
 
Open Audit
Open AuditOpen Audit
Open Auditncspa
 

Similar to IBM Bluemix OpenWhisk: Serverless Conference 2016, London, UK: The Future of Cloud Programming (20)

Andreas Nauerz and Michael Behrendt - Event Driven and Serverless Programming...
Andreas Nauerz and Michael Behrendt - Event Driven and Serverless Programming...Andreas Nauerz and Michael Behrendt - Event Driven and Serverless Programming...
Andreas Nauerz and Michael Behrendt - Event Driven and Serverless Programming...
 
How to build a Distributed Serverless Polyglot Microservices IoT Platform us...
How to build a Distributed Serverless Polyglot Microservices IoT Platform us...How to build a Distributed Serverless Polyglot Microservices IoT Platform us...
How to build a Distributed Serverless Polyglot Microservices IoT Platform us...
 
Apache OpenWhisk Serverless Computing
Apache OpenWhisk Serverless ComputingApache OpenWhisk Serverless Computing
Apache OpenWhisk Serverless Computing
 
Serverless Apps with Open Whisk
Serverless Apps with Open Whisk Serverless Apps with Open Whisk
Serverless Apps with Open Whisk
 
The 'Serverless' Paradigm, OpenWhisk and FIWARE
The 'Serverless' Paradigm, OpenWhisk and FIWAREThe 'Serverless' Paradigm, OpenWhisk and FIWARE
The 'Serverless' Paradigm, OpenWhisk and FIWARE
 
Kube con china_2019_7 missing factors for your production-quality 12-factor apps
Kube con china_2019_7 missing factors for your production-quality 12-factor appsKube con china_2019_7 missing factors for your production-quality 12-factor apps
Kube con china_2019_7 missing factors for your production-quality 12-factor apps
 
Using Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT ChallengesUsing Blueprints to Overcome Multi-speed IT Challenges
Using Blueprints to Overcome Multi-speed IT Challenges
 
Java Development on Bluemix
Java Development on BluemixJava Development on Bluemix
Java Development on Bluemix
 
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
 
OpenWhisk JavaOne
OpenWhisk JavaOneOpenWhisk JavaOne
OpenWhisk JavaOne
 
Mobile, Open Source, and the Drive to the Cloud
Mobile, Open Source, and the Drive to the CloudMobile, Open Source, and the Drive to the Cloud
Mobile, Open Source, and the Drive to the Cloud
 
Mobile, Open Source, & the Drive to the Cloud
Mobile, Open Source, & the Drive to the CloudMobile, Open Source, & the Drive to the Cloud
Mobile, Open Source, & the Drive to the Cloud
 
RTP Bluemix Meetup April 20th 2016
RTP Bluemix Meetup April 20th 2016RTP Bluemix Meetup April 20th 2016
RTP Bluemix Meetup April 20th 2016
 
Microservices and Serverless Computing - OpenWhisk
Microservices and Serverless Computing - OpenWhiskMicroservices and Serverless Computing - OpenWhisk
Microservices and Serverless Computing - OpenWhisk
 
Microservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing MicroservicesMicroservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing Microservices
 
Swift at IBM: Mobile, open source and the drive to the cloud
Swift at IBM: Mobile, open source and the drive to the cloudSwift at IBM: Mobile, open source and the drive to the cloud
Swift at IBM: Mobile, open source and the drive to the cloud
 
Open stack ocata summit enabling aws lambda-like functionality with openstac...
Open stack ocata summit  enabling aws lambda-like functionality with openstac...Open stack ocata summit  enabling aws lambda-like functionality with openstac...
Open stack ocata summit enabling aws lambda-like functionality with openstac...
 
Hyperledger Composer architecture
Hyperledger Composer architectureHyperledger Composer architecture
Hyperledger Composer architecture
 
Serverless forwardjs
Serverless forwardjsServerless forwardjs
Serverless forwardjs
 
Open Audit
Open AuditOpen Audit
Open Audit
 

Recently uploaded

Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 

Recently uploaded (20)

Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 

IBM Bluemix OpenWhisk: Serverless Conference 2016, London, UK: The Future of Cloud Programming

  • 1. ServerlessConf London 2016 IBM Bluemix OpenWhisk The Future of Cloud Programming: Event-driven and Serverless Programming with OpenWhisk Dr. Andreas Nauerz, Technical Product Manager @AndreasNauerz Michael Behrendt, Distinguished Engineer @michael_beh
  • 2. Please Note: 2 • IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion. • Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. • The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. • The development, release, and timing of any future features or functionality described for our products remains at our sole discretion. • Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.
  • 3. Agenda • OpenWhisk in a nutshell & comparison to traditional models • How OpenWhisk works, how it has been build & usage scenarios • Programming model • Live demo • What‘s new? • Summary & Questions 3
  • 4. OpenWhisk* in a nutshell „Event-action platform to execute code in response to events“ Delivered as open source & managed service on IBM Bluemix * whisk (v): to move nimbly and quickly (source: merriam-webster.com)
  • 5. OpenWhisk* in a nutshell „Event-action platform to execute code in response to events“ Available as beta and for free * whisk (v): to move nimbly and quickly (source: merriam-webster.com) https://console.ng.bluemix.net/openwhisk/
  • 6. OpenWhisk: Comparison to traditional models Swift Application Container VMCF 22 Polling 1b1b Request 1a1a • Traditional model – Continous polling due to missing event programming model – Charges even when idling due to poor utilization – Worry about scaling • When to scale? (mem-, cpu-, response time-driven) • How fast to scale? – Worry about resiliency • At least 2 processes for HA (driving cost) • Deployment in multiple regions (driving cost) • Keep them running & healthy Process & idle
  • 7. OpenWhisk: Comparison to traditional models • OpenWhisk – Introduces event programming model – Charges only for what is used due to optimal utilization – Scales inherently • One process per request – No cost overhead for resiliency • No long running process for HA Trigger 11 Running action Running action Running action 33 Deploy action within millisecs, run it, free up resources OpenWhisk Engine 22 Pool of actions Swift DockerJS Python Java * * work in progress
  • 8. OpenWhisk in a nutshell Serverless deployment & operations model Optimal utilization & granular pricing Scales on a per-request basis
  • 9. OpenWhisk in a nutshell Flexible programming model Support for different invocation models Blocking, non-blocking, periodic Polyglot support Support for multiple runtimes: JS/NodeJS, Swift, Python, Java*, Docker Community efforts: Go, Haskell, Scala, … Supports higher-level programming constructs Parameter binding Chaining/sequencing Debugging* * work in progress
  • 10. OpenWhisk in a nutshell Open engine & open event emitter/consumer ecosystem Open interface for event emitters Implemented in Scala & implemented based upon open technologies Docker, Kafka, Consul, … Community efforts to integrate with open tools Serverless Framwork*, VS Code, NodeRED, Jupyter Notebooks , … Apache Incubator proposal is out! Submitted jointly with partners! * work in progress
  • 11. OpenWhisk: Another way to build apps… Build your apps, your way. Use a combination of the most prominent open-source compute technologies to power your apps. Then, let Bluemix handle the rest. Ease of getting started Full stack Control OpenWhisk Event-driven apps, deployed in a serverless environment. Instant Runtimes App-centric runtime environments based on Cloud Foundry. IBM Containers Portable and consistent delivery of your app without having to manage an OS. Virtual Machines Get the most flexibility and control over your environment with VMs.
  • 12. OpenWhisk: How does it work? * work in progress } 11 Event Providers Cloudant Push Notifcations Kafka* … … Data event occurs, e.g. -Commit on a Git Repository -CRUD operation on Cloudant -…. … OpenWhisk Trigger execution of associated OpenWhisk action 22 Swift DockerJS Python Java*
  • 13. OpenWhisk: How does it work? Incoming HTTP request, e.g. HTTP GET openwhisk.ng.bluemix.net/api/v1/<namespace>/actions/getCustomers 11 Browser Mobile App Web App OpenWhisk 22 Invoke associated OpenWhisk action „getCustomers“ Swift DockerJS Python Java* Variety of languages Variety of languages * work in progress
  • 14. OpenWhisk: How does it work? Coming soon... • API Gateway is build based on contributions from Adobe & IBM leveraging technologies like Nginx & IBM’s microgateway • Allows to create, run, manage and secure APIs and microservices • Combined with OpenWhisk it provides an easy way to build backends without the need to manage servers by mapping APIs to actions • Both technologies together allow to quickly develop & deploy serverless APIs, microservices & SPAs Incoming HTTP request, e.g. HTTP GET api-gw.mybluemix.net/…/getCustomers 11 Browser Mobile App Web App 22 OpenWhisk 33 Invoke associated OpenWhisk action “getCustomers“ Swift DockerJS Python Java* * work in progress
  • 15. OpenWhisk: How does it work? Coming soon... - API Gateway takes care of… - security (authenticate, authorize, threat protect, validate) - control (rate limiting, response caching) - mediation - parameter mapping - schema validation - … and supports e.g. different verbs (Get, Post, Put, Delete, …) Incoming HTTP request, e.g. HTTP GET api-gw.mybluemix.net/…/getCustomers 11 Browser Mobile App Web App 22 OpenWhisk 33 Invoke associated OpenWhisk action „getCustomers“ Swift DockerJS Python Java* * work in progress
  • 16. OpenWhisk: How does it work? Coming soon... • OpenWhisk CLI is extended to to allow user to define routes for actions $ wsk action create hello hello.js $ wsk api create GET /v1/hello hello Route URL: https://api-gw.mybluemix.net/api/ /nsuuid/v1/hello $ curl –XGET https://api-gw.mybluemix.net/api/ /nsuuid/v1/hello { message: ”Hello World” } 11 Browser Mobile App Web App 22 OpenWhisk 33 Invoke associated OpenWhisk action „getCustomers“ Swift DockerJS Python Java* * work in progress Incoming HTTP request, e.g. HTTP GET api-gw.mybluemix.net/…/getCustomers
  • 17. OpenWhisk architecture Trigger Package Feed Package Feed Package Feed Package Feed REST CLI iOS SDK CRUD triggers, actions, and rules Invoke actions UI Action NodeJS Action Swift Action Docker Rule Rule Rule Action NodeJS Action Docker Service ecosytem Bluemix services 3rd party services Self-enabled services Chain Chain Invoke Docker (and potentially other abstractions going forward) API Gateway* * work in progress
  • 18. Some usage Scenarios • Microservices-based apps / APIs • Mobile Backends • Data (Stream) Processing • IoT • Cognitive • Bots
  • 20. OpenWhisk: Topology in OpenSource 20 Controller …Invoker InvokerInvoker
  • 21. Cloudant OpenWhisk: Topology in Bluemix 21 ELK-Stack soonsoon Controller Integration Service soonsoon …InvokerInvokerInvoker Monitoring soonsoon
  • 22. OpenWhisk: Usage of Docker • Isolation of actions • Control over consumed resources of each container 22 AA = wsk action invoke docker run ≈
  • 23. OpenWhisk: Container startup 23 Start container docker run Initialize /init Run /run cold container
  • 24. Start container docker run Initialize /init Run /run OpenWhisk: Container startup 24 pre-warmed container
  • 26. OpenWhisk: Container startup optimization • Performance is king. 26 cold container pre-warmed container warm container faster
  • 27. Programming model • Services define the events they emit as triggers, and developers associate the actions to handle the events via rules • The developer only needs to care about implementing the desired application logic - the system handles the rest TT RR AA
  • 28. Programming model Debugging actions*AA • Allows to… – debug actions locally – inspect parameter values – edit code & push changes • Supports debugging… – NodeJS, Python and Swift actions * work in progress
  • 29. Programming model Debugging actions*AA * work in progress https://github.com/openwhisk/openwhisk-debugger
  • 30. Programming model Actions: Can be chained to create sequences to increase flexibility and foster reuse AA AA AA := A1 A1 + A2 A2 + A3 A3 AB AB := A2 A2 + A1 A1 + A3 A3 AC AC := A3 A3 + A1 A1 + A2 A2
  • 31. Programming model Rules: „An association of a trigger and an action“RR RR := TT AA
  • 32. Event & Action Providers Open Source Third Party Yours Push Notifications webhook AA forecast translate languageId textToSpeech changes TT sendMessage databaseCreate documentRead ... Websocket send webhook post myAction myFeed AA TT
  • 33. What’s new? • Community effort to integrate with open tools: NodeRED • NodeRED is all about automating flows to orchestrate calls to different service APIs – Usually triggered by calls from external systems or devices – Runs within a long-running single node process, with a dedicated amount of CPU & memory being allocated • OpenWhisk is all about executing code (custom logic) in response to events on a scalable platform, with a dedicated amount of CPU & memory being allocated per-request • NodeRED and OpenWhisk complement each other – Use NodeRED to graphically create flows, automating a series of tasks in a kind of workflow – Use OpenWhisk to execute custom logic (requiring some kind of CPU- or memory bound operation) triggered from within NodeRED
  • 34. What’s new? • Community effort to integrate with open tools: VS Code extension • Eases development with OpenWhisk by supporting the entire development cycle (list, create, update, invoke, actions etc.) without the need to leave the IDE • Extension works for actions written in different languages (like JS and Swift) and on different platforms (like Windows, Mac, and Linux)
  • 36. What’s (else is) new? • Graduated from experimental to public beta on 09/09 – programming language support for Node 6, Python, and pre-releases of Swift 3, Java* – support for uploading (Node) dependencies – new UI for editing, monitoring, and configuring integrations – simple GO-based binary CLI available - cross platform – a growing list of interesting open-source applications on github, including DarkVision (https://github.com/IBM-Bluemix/openwhisk-darkvisionapp) and Skylink (https://github.com/IBM-Bluemix/skylink) * work in progress
  • 37. Join us today • You want to try OpenWhisk on your own? – Want to try out our IBM Bluemix OpenWhisk offering for free? • Sign-up today at: https://console.ng.bluemix.net/openwhisk/ – Want to try out our open-source OpenWhisk offering? • Visit: https://developer.ibm.com/openwhisk/
  • 38. Learn more • OpenWhisk Developer Center (focuses on our open-source project) https://developer.ibm.com/openwhisk/ • OpenWhisk Blog https://developer.ibm.com/openwhisk/blogs/ • OpenWhisk on Github https://github.com/openwhisk/openwhisk/ • OpenWhisk official documentation on Github https://github.com/openwhisk/openwhisk/blob/master/docs/README.md
  • 39. Learn more • OpenWhisk on Twitter https://twitter.com/openwhisk • OpenWhisk on Slack https://dwopen.slack.com (channel: openwhisk) To join go here: http://slackindwo.mybluemix.net/ • OpenWhisk additional material on Slideshare http://www.slideshare.net/OpenWhisk • OpenWhisk additional material on Youtube https://www.youtube.com/channel/UCbzgShnQk8F43NKsvEYA1SA • Other OpenWhisk material https://github.com/openwhisk/awesome-openwhisk
  • 40. Learn more • OpenWhisk past and upcoming events https://developer.ibm.com/openwhisk/events/
  • 42. Notices and Disclaimers 42 Copyright © 2016 by International Business Machines Corporation (IBM). No part of this document may be reproduced or transmitted in any form without written permission from IBM. U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM. Information in these presentations (including information relating to products that have not yet been announced by IBM) has been reviewed for accuracy as of the date of initial publication and could include unintentional technical or typographical errors. IBM shall have no responsibility to update this information. THIS DOCUMENT IS DISTRIBUTED "AS IS" WITHOUT ANY WARRANTY, EITHER EXPRESS OR IMPLIED. IN NO EVENT SHALL IBM BE LIABLE FOR ANY DAMAGE ARISING FROM THE USE OF THIS INFORMATION, INCLUDING BUT NOT LIMITED TO, LOSS OF DATA, BUSINESS INTERRUPTION, LOSS OF PROFIT OR LOSS OF OPPORTUNITY. IBM products and services are warranted according to the terms and conditions of the agreements under which they are provided. Any statements regarding IBM's future direction, intent or product plans are subject to change or withdrawal without notice. Performance data contained herein was generally obtained in a controlled, isolated environments. Customer examples are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual performance, cost, savings or other results in other operating environments may vary. References in this document to IBM products, programs, or services does not imply that IBM intends to make such products, programs or services available in all countries in which IBM operates or does business. Workshops, sessions and associated materials may have been prepared by independent session speakers, and do not necessarily reflect the views of IBM. All materials and discussions are provided for informational purposes only, and are neither intended to, nor shall constitute legal or other guidance or advice to any individual participant or their specific situation. It is the customer’s responsibility to insure its own compliance with legal requirements and to obtain advice of competent legal counsel as to the identification and interpretation of any relevant laws and regulatory requirements that may affect the customer’s business and any actions the customer may need to take to comply with such laws. IBM does not provide legal advice or represent or warrant that its services or products will ensure that the customer is in compliance with any law
  • 43. Notices and Disclaimers Con’t. 43 Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products in connection with this publication and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. IBM does not warrant the quality of any third-party products, or the ability of any such third-party products to interoperate with IBM’s products. IBM EXPRESSLY DISCLAIMS ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. The provision of the information contained h erein is not intended to, and does not, grant any right or license under any IBM patents, copyrights, trademarks or other intellectual property right. IBM, the IBM logo, ibm.com, Aspera®, Bluemix, Blueworks Live, CICS, Clearcase, Cognos®, DOORS®, Emptoris®, Enterprise Document Management System™, FASP®, FileNet®, Global Business Services ®, Global Technology Services ®, IBM ExperienceOne™, IBM SmartCloud®, IBM Social Business®, Information on Demand, ILOG, Maximo®, MQIntegrator®, MQSeries®, Netcool®, OMEGAMON, OpenPower, PureAnalytics™, PureApplication®, pureCluster™, PureCoverage®, PureData®, PureExperience®, PureFlex®, pureQuery®, pureScale®, PureSystems®, QRadar®, Rational®, Rhapsody®, Smarter Commerce®, SoDA, SPSS, Sterling Commerce®, StoredIQ, Tealeaf®, Tivoli®, Trusteer®, Unica®, urban{code}®, Watson, WebSphere®, Worklight®, X-Force® and System z® Z/OS, are trademarks of International Business Machines Corporation, registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at: www.ibm.com/legal/copytrade.shtml.

Editor's Notes

  1. API GW
  2. API GW
  3. API GW
  4. Java?
  5. Java?
  6. Java?