Learn more about the IBM Bluemix OpenWhisk, a serverless event-driven compute platform, which quickly executes application logic in response to events or direct invocations from web/mobile apps or other endpoints.
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
IBM Bluemix OpenWhisk: Cloud Foundry Summit 2016, Frankfurt, Germany: The Future of Cloud Programming
1. Serverless and Event-driven Applications with Cloud
Foundry and OpenWhisk
Andrei Yurkevich (@yurkvch)
Chief Technology Officer
Andreas Nauerz (@AndreasNauerz)
Technical Product Manager
2. @altoros@yurkvch
WHAT WE DO
Altoros brings “software assembly lines” into organizations
through integration of solutions offered by the Cloud Foundry ecosystem.
TRAINING:
FOR OPERATORS
FOR DEVELOPERS
DEVELOPER
ADOPTION
CONSULTING
PROOF OF CONCEPT
& IMPLEMENTATION
APP DEVELOPMENT
& MICROSERVICES
2
POPULARPOPULAR
Delivered by partners:
Delivered by Altoros:
3. @altoros@yurkvch
WHO WE ARE
Altoros offices Delivery partner in APAC
3
Minsk, BY
Oslo, NO
Sunnyvale, CA
(HQ)
Chicopee, MA
London, UK
Espoo, FI
Buenos Aires, AR
Santa Fe, AR
Tokyo, JP
Silkeborg, DK
Zurich, CH
Taby, SE
4. 4
We will tell you about…
● Why we need event-driven infrastructure
5. 5
We will tell you about…
● Why we need event-driven infrastructure
● Requirements for event-driven infrastructure
6. 6
We will tell you about…
● Why we need event-driven infrastructure
● Requirements for event-driven infrastructure
● Introducing OpenWhisk
7. 7
We will tell you about…
● Why we need event-driven infrastructure
● Requirements for event-driven infrastructure
● Introducing OpenWhisk
● OpenWhisk and CloudFoundry
8. 8
We will tell you about…
● Why we need event-driven infrastructure
● Requirements for event-driven infrastructure
● Introducing OpenWhisk
● OpenWhisk and CloudFoundry
● Demo
30. 30
So what are the requirements?
● Invoke and scale as fast as possible
● Terminate after completion
31. 31
So what are the requirements?
● Invoke and scale as fast as possible
● Terminate after completion
● Charge per compute used
32. 32
So what are the requirements?
● Invoke and scale as fast as possible
● Terminate after completion
● Charge per compute used
● Guaranteed message delivery
● Load balancing
33. 33
So what are the requirements?
● Invoke and scale as fast as possible
● Terminate after completion
● Charge per compute used
● Guaranteed message delivery
● Load balancing
● High availability
● Self-healing
34. 34
So what are the requirements?
● Invoke and scale as fast as possible
● Terminate after completion
● Charge per compute used
● Guaranteed message delivery
● Load balancing
● High availability
● Self-healing
● Support of multiple
technologies
● Have possibility to launch other
microservices
● Write and read data from
multiple data sources
35. 35
So what are the requirements?
● Invoke and scale as fast as possible
● Terminate after completion
● Charge per compute used
● Guaranteed message delivery
● Load balancing
● High availability
● Self-healing
● Support of multiple
technologies
● Have possibility to launch other
microservices
● Write and read data from
multiple data sources
● Abstract developers from the
infrastructure
36. Yorktown, NY
OpenWhisk in a nutshell
Raleigh, NCAustin, TX
Boeblingen, Germany
Serverless computing in general and OpenWhisk in particular is regarded an important effort 31
37. 37
OpenWhisk in a nutshell
„Event-action platform to execute code in response to events“
* whisk (v): to move nimbly and quickly (source: merriam-webster.com)
38. 38
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)
40. 40
OpenWhisk in a nutshell
Serverless deployment & operations model
Optimal utilization & granular pricing
41. 41
OpenWhisk in a nutshell
Serverless deployment & operations model
Optimal utilization & granular pricing
Scales on a per-request basis
42. 42
OpenWhisk in a nutshell
Serverless deployment & operations model
Optimal utilization & granular pricing
Flexible programming model
Supports higher-level programming constructs (e.g. sequencing)
Scales on a per-request basis
Polyglot support
43. 43
OpenWhisk in a nutshell
Serverless deployment & operations model
Optimal utilization & granular pricing
Flexible programming model
Open (Apache 2) & open ecosystem
Supports higher-level programming constructs (e.g. sequencing)
Open interface for event providers
Scales on a per-request basis
Polyglot support
Leverages Docker, Kafka, Consul, …
44. 44
OpenWhisk in a nutshell
Serverless deployment & operations model
Optimal utilization & granular pricing
Flexible programming model
Open (Apache 2) & open ecosystem
Supports higher-level programming constructs (e.g. sequencing)
Open interface for event providers
Scales on a per-request basis
Polyglot support
Implemented in Scala
Leverages Docker, Kafka, Consul, …
45. OpenWhisk in a nutshell
Swift
Application
Container VMCF
2
Polling
1b
Request
1a
Traditional model
• Continous polling due to missing event
programming model
• Charges even when idling due to poor utilization
Process & idle
46. OpenWhisk in a nutshell
Swift
Application
Container VMCF
2
Polling
1b
Request
1a
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?
Process & idle
47. OpenWhisk in a nutshell
Swift
Application
Container VMCF
2
Polling
1b
Request
1a
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
48. OpenWhisk in a nutshell
OpenWhisk
• Introduces event programming model
• Charges only for what is used due to optimal
utilization Pool of actions
Swift DockerJS
Trigger
1
Running
action
Running
action
Running
action
3
Deploy action within millisecs,
run it,
free up resources
OpenWhisk
Engine
2
49. OpenWhisk in a nutshell
OpenWhisk
• Introduces event programming model
• Charges only for what is used due to optimal
utilization
• Scales inherently
- One process per request
Pool of actions
Swift DockerJS
Trigger
1
Running
action
Running
action
Running
action
3
Deploy action within millisecs,
run it,
free up resources
OpenWhisk
Engine
2
50. OpenWhisk in a nutshell
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
Pool of actions
Swift DockerJS
Trigger
1
Running
action
Running
action
Running
action
3
Deploy action within millisecs,
run it,
free up resources
OpenWhisk
Engine
2
51. OpenWhisk in a nutshell
}
1
Event Providers
OpenWhisk
Cloudant
Push Notifcations
…
…
…
Data event occurs, e.g.
-Commit on a Git Repository
-CRUD operation on Cloudant
-….
Trigger execution
of associated
OpenWhisk action
2
…
JS Swift Docker …
52. OpenWhisk in a nutshell
OpenWhisk
JS Swift Docker …
Incoming HTTP request, e.g.
HTTP GET mynewcoolapp.com/customers
1 2 Invoke associated
OpenWhisk action
„getCustomers“
Browser
Mobile App
Web App
Variety of
languages
53. OpenWhisk in a nutshell
• 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
T R A
54. OpenWhisk in a nutshell
Trigger: „A class of events that can happen“T
55. OpenWhisk in a nutshell
A Actions: „An event-handler, i.e. code that runs in response to an event“
56. OpenWhisk in a nutshell
A
AA
:= A1
+ A2
+ A3
AB
:= A2
+ A1
+ A3
AC
:= A3
+ A1
+ A2
Actions: Can be chained to create sequences to increase flexibility and foster
reuse
57. OpenWhisk in a nutshell
R
R := T A
Rules: „An association of a trigger and an action“
58. OpenWhisk in a nutshell
myAction
myFeedT
A
Packages: „A shared collection of triggers and actions“P
A forecast
Open
Source
Yours
Third
Party
translate
languageId
textToSpeec
h
A
A
A
databaseCreate
documentRead
...
changesT
A
A
A
Push
Notifications
sendMessage
webhookT
A
webhookT
postA
Websocket
sendA
59. OpenWhisk in a nutshell
You want to try OpenWhisk on your own?
60. OpenWhisk in a nutshell
You want to try OpenWhisk on your own?
• Want to try out our IBM Bluemix OpenWhisk offering?
Sign-up today at: https://new-console.ng.bluemix.net/openwhisk/
61. OpenWhisk in a nutshell
You want to try OpenWhisk on your own?
• Want to try out our IBM Bluemix OpenWhisk offering?
Sign-up today at: https://new-console.ng.bluemix.net/openwhisk/
• Want to try out our open-source OpenWhisk offering?
Visit: https://developer.ibm.com/openwhisk/
67. 67
I can’t use OpenWhisk on Bluemix because
Vendor lock-in
68. 68
I can’t use OpenWhisk on Bluemix because
Vendor lock-in
All my data is (in local datacenter)
69. 69
I can’t use OpenWhisk on Bluemix because
Vendor lock-in
All my data is (in local datacenter)
We implement a hybrid strategy
70. 70
I can’t use OpenWhisk on Bluemix because
Vendor lock-in
All my data is (in local datacenter)
We implement a hybrid strategy
We don’t use Bluemix at...
71. 71
I can’t use OpenWhisk on Bluemix because
Vendor lock-in
All my data is (in local datacenter)
We implement a hybrid strategy
We don’t use Bluemix at...
I need to have the compute device on the network edge
72. 72
I can’t use OpenWhisk on Bluemix because
Vendor lock-in
All my data is (in a local data center)
We implement a hybrid strategy
We don’t use Bluemix at...
I need to have the compute device on the network edge
Security!