SlideShare une entreprise Scribd logo
1  sur  51
Télécharger pour lire hors ligne
Cloud Native, Event Driven,
Serverless
Micrsoservices Framework
OpenWhisk
@AnimeshSingh
2
Agenda!
•  What does it mean to be Cloud Native?!
•  Twelve Factor Apps!
•  What are Microservices?!
•  Developing and Deploying Microservices using OpenWhisk!
3
What does it mean to be Cloud Native?!
•  Clean contract with underlying OS to ensure maximum portability!
•  Scale elastically without significant changes to tooling, architecture or
development practices!
•  Resilient to inevitable failures in the infrastructure and application!
•  Instrumented to provide both technical and business insight!
•  Utilize cloud services e.g. storage, queuing, caching, …!
•  Rapid and repeatable deployments to maximise agility!
•  Automated setup to minimize time and cost for new developers!
Twelve Factor Apps!
4!
Twelve Factors
I.  Codebase
II.  Dependencies
III.  Config
IV.  Backing Services
V.  Build, release, run
VI.  Processes
VII. Port binding
VIII. Concurrency
IX.  Disposability
X.  Dev/prod parity
XI.  Logs
XII. Admin processes
•  One codebase tracked in revision
control, many deploys
Twelve Factors
I.  Codebase
II.  Dependencies
III.  Config
IV.  Backing Services
V.  Build, release, run
VI.  Processes
VII. Port binding
VIII. Concurrency
IX.  Disposability
X.  Dev/prod parity
XI.  Logs
XII. Admin processes
•  Explicitly declare and isolate
dependencies
•  Typically platform dependent e.g.
npm, bundler or Liberty feature
manager
•  Never rely on system-wide
dependencies
Twelve Factors
I.  Codebase
II.  Dependencies
III.  Config
IV.  Backing Services
V.  Build, release, run
VI.  Processes
VII. Port binding
VIII. Concurrency
IX.  Disposability
X.  Dev/prod parity
XI.  Logs
XII. Admin processes
•  Store config in the environment
•  Separate config from source
•  Avoid ‘config groups’
Twelve Factors
I.  Codebase
II.  Dependencies
III.  Config
IV.  Backing Services
V.  Build, release, run
VI.  Processes
VII. Port binding
VIII. Concurrency
IX.  Disposability
X.  Dev/prod parity
XI.  Logs
XII. Admin processes
•  Treat backing services as attached
resources
•  Local and remote resources should
be treated identically
Twelve Factors
I.  Codebase
II.  Dependencies
III.  Config
IV.  Backing Services
V.  Build, release, run
VI.  Processes
VII. Port binding
VIII. Concurrency
IX.  Disposability
X.  Dev/prod parity
XI.  Logs
XII. Admin processes
•  Strictly separate build and run
stages
Twelve Factors
I.  Codebase
II.  Dependencies
III.  Config
IV.  Backing Services
V.  Build, release, run
VI.  Processes
VII. Port binding
VIII. Concurrency
IX.  Disposability
X.  Dev/prod parity
XI.  Logs
XII. Admin processes
•  Execute the app as one or more
stateless processes
•  Never rely on sticky sessions
Twelve Factors
I.  Codebase
II.  Dependencies
III.  Config
IV.  Backing Services
V.  Build, release, run
VI.  Processes
VII. Port binding
VIII. Concurrency
IX.  Disposability
X.  Dev/prod parity
XI.  Logs
XII. Admin processes
•  Export services via port binding
Twelve Factors
I.  Codebase
II.  Dependencies
III.  Config
IV.  Backing Services
V.  Build, release, run
VI.  Processes
VII. Port binding
VIII. Concurrency
IX.  Disposability
X.  Dev/prod parity
XI.  Logs
XII. Admin processes
•  Scale out via the process model
•  Individual VMs can only scale
vertically so far
•  Stateless nature makes scaling
simple
Twelve Factors
I.  Codebase
II.  Dependencies
III.  Config
IV.  Backing Services
V.  Build, release, run
VI.  Processes
VII. Port binding
VIII. Concurrency
IX.  Disposability
X.  Dev/prod parity
XI.  Logs
XII. Admin processes
•  Maximize robustness with fast
startup and graceful shutdown
•  Application instances are disposable
•  Crash-only design is logical
conclusion
Twelve Factors
I.  Codebase
II.  Dependencies
III.  Config
IV.  Backing Services
V.  Build, release, run
VI.  Processes
VII. Port binding
VIII. Concurrency
IX.  Disposability
X.  Dev/prod parity
XI.  Logs
XII. Admin processes
•  Keep development, staging, and
production as similar as possible
•  Use the same backing services in
each environment
Twelve Factors
I.  Codebase
II.  Dependencies
III.  Config
IV.  Backing Services
V.  Build, release, run
VI.  Processes
VII. Port binding
VIII. Concurrency
IX.  Disposability
X.  Dev/prod parity
XI.  Logs
XII. Admin processes
•  Treat logs as event streams
•  Don’t write to log files
Twelve Factors
I.  Codebase
II.  Dependencies
III.  Config
IV.  Backing Services
V.  Build, release, run
VI.  Processes
VII. Port binding
VIII. Concurrency
IX.  Disposability
X.  Dev/prod parity
XI.  Logs
XII. Admin processes
•  Run admin/management tasks as
one-off processes
•  E.g. database migrations or for
debugging
What are
Microservices?
17
Monolithic
Application
Monolithic
Application
Modularity
Monolithic
Application
Scaling
Monolithic
Application
Failing
û
Monolithic
Application
Failing
û
Monolithic
Application
Failed
û û
û û
Monolithic
Application
Update
Monolithic
Application
Revolution
Monolithic
Application
Develop
Microservices
Application
Microservices
Application
Interactions
Microservices
Application
Scaled
Microservices
Application
Evolution
Monolithic versus Microservices
Monolithic Microservice
Architecture Built as a single logical executable (typically the server-side
part of a three tier client-server-database architecture)
Built as a suite of small services, each running separately and
communicating with lightweight mechanisms
Modularity Based on language features Based on business capabilities
Agility Changes to the system involve building and deploying a new
version of the entire application
Changes can be applied to each service independently
Scaling Entire application scaled horizontally behind a load-balancer Each service scaled independently when needed
Implementation Typically written in one language Each service implemented in the language that best fits the need
Maintainability Large code base intimidating to new developers Smaller code base easier to manage
Transaction ACID BASE
31
•  Challenges with today’s models:!
•  Complex to construct applications driven
by events!
•  Lots of idle time — need to pay for
resources even if no request is being
handled (most APIs / apps don’t receive
super-high load)!
•  Scaling capacity is coarse granular,
relatively slow & complex!
Motivation and Introduction – Today!
Handles request,
returns results,
and goes into idle mode, waiting
for next request
2!
App!
CF/Container/VM!
Receives request,!
e.g. HTTP request against API!
1b!
Polls for change,!
e.g. whether new data arrived, record
changed, new data record, temp above
60 degrees, etc.!
1a!
Motivation and Introduction!
OpenWhisk!
Actions
(Swift, Node, Java, … code)
Trigger, invoking whisk action!
e.g. HTTP request against API, event about new data record,
temp above 60 degrees, etc.!
1!
…
Deploys action within millisecs,
runs it,
returns results and
frees up resources
2!
… …
Execute code on demand in a
highly scalable serverless
environment
Bluemix OpenWhisk
Open Source & Open Ecosystem
Take advantage of easily integrating
with an ever growing list of event
providers and consumers
Action Chaining
Develop independent pieces of code
and quickly connect them and
ecosystem services together
Scale on demand, no administration
Upload your code and let it run. There is
no need to think about infrastructure or
worry about peak projections.
Integrated Container Support
Run custom code put in a Docker
container and never worry about
vendor lock-in
3
Meet
OpenWhisk
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 en
vironment.!
Instant Runtimes
App-centric runtime !
environments based on !
Cloud Foundry.!
IBM Containers
Portable and consistent !
delivery of your app !
without having to manage a
n OS.!
Virtual Machines
Get the most flexibility !
and control over your !
environment with VMs.!
36
Bluemix Compute Models!
Cloud Foundry
application!
Docker Container! Virtual Machine!
Consistent experience:!
•  Common service binding & consumption model!
•  Common user ID & permissions model!
•  Ability to hook into common routing layer!
expanding
Level of
abstraction
Flexibility
Event Driven!
application!
High-level
architecture
Triggers: A class of events emitted by
event sources."

Actions: Encapsulate the actual code to
be executed which support multiple
language bindings. Actions invoke any
part of an open ecosystem.

Rules: An association between a trigger
and an action."

Packages: Describe external services in
a uniform manner."
"
Combined these allow developers to
compose solutions using modern
abstraction and chaining which can be
created, accessed, updated and
deleted via the CLI
OpenWhisk provides a distributed compute
service to execute application logic in response to
events. !
OpenWhisk: How does it work?
}
1
Event Providers
OpenWhisk
Cloudant
Git
Weather
…
…
Data event occurs, e.g.
- Commit on a Git Repository
- CRUD operation on Cloudant
- ….
Trigger execution of
associated
OpenWhisk action
2
…
JS Swift! Docker …
OpenWhisk: How does it work?
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
Some usage Scenarios
OpenWhisk can help power
various mobile, web and IoT app
usecases by simplifying the
programming model of
orchestrating various services
using events without a dedicated
backend.
Digital app workloads Big Data/Analytics pipeline
Complex data pipeline for Big Data/
Analytics tasks can be scripted using
changes in data services or streams
for near real-time analytics and
feedback.
DevOps & infrastructure as code
OpenWhisk can be used to
automate DevOps pipeline based
on events triggered from
successful builds or completed
staging or a go-live event.
Micro-Services builder
Whisk can be used to easily build
micro-services given the footprint
and programming model desired by
micro services
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
T A R
Programming model
Trigger: „A class of events that can happen“
T
Programming model
Actions: „An event-handler, i.e. code that runs in response to an event“
A
Programming model
Actions: Multi-runtime support, e.g. JavaScript!A
function	main(msg)	{	
	return	{	message:	'Hello,	'	+	msg.name	+	'	from	'	+	msg.place	};	
};
Programming model
Actions: Multi-runtime support, e.g. Swift!A
func	main(params:[String:Any])	->	[String:Any]	{		
	var	reply	=	[String:Any]	()		
	if	let	name	=	params[“name”]	as?	String	{	
	 	print(“Hello	(name)”)		
	 	reply[“msg”]	=	“Goodbye	(name)”	
	}		
	return	reply		
}
Programming model
Actions: Multi-runtime support, e.g. Docker containers!A
Programming model
Rules: „An association of a trigger and an action“
R
R := T A
Programming model
Actions: Can be chained to create sequences to increase flexibility and
foster reuse!
A
AA
:= A1
+ A2
+ A3
AB
:= A2
+ A1
+ A3
AC
:= A3
+ A1
+ A2
Programming model
Packages: „A shared collection of triggers and actions“P
A
A read
write
T changes A translate A forecast
A post
T topic
Open
Source A myAction
T myFeed
Yours
T commit
Third
Party
Abstract away infrastructure so
that you can focus on business
logic and innovating 
4
OpenWhisk to usher in new era of extreme
simplification in application development
•  You can innovate faster through an open ecosystem including
powerful services from IBM like Watson.
• You can quickly build apps and microservices quickly without
having to worry about infrastructure, scalability, or resiliency.
•  You can easily work in teams through uniquely powerful chaining
and choice of programming language including Swift.
•  Easily extend functionality with Docker.
IBM Bluemix
OpenWhisk
Questions?

Contenu connexe

Tendances

Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)VMware Tanzu
 
Introduction to Platform-as-a-Service and Cloud Foundry
Introduction to Platform-as-a-Service and Cloud FoundryIntroduction to Platform-as-a-Service and Cloud Foundry
Introduction to Platform-as-a-Service and Cloud FoundryManuel Silveyra
 
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic RelationshipCloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic RelationshipMatt Stine
 
Run your Java code on Cloud Foundry
Run your Java code on Cloud FoundryRun your Java code on Cloud Foundry
Run your Java code on Cloud FoundryAndy Piper
 
Going Cloud Native with Cloud Foundry
Going Cloud Native with Cloud FoundryGoing Cloud Native with Cloud Foundry
Going Cloud Native with Cloud FoundryChip Childers
 
Optimizing Cloud Foundry and OpenStack for large scale deployments
Optimizing Cloud Foundry and OpenStack for large scale deploymentsOptimizing Cloud Foundry and OpenStack for large scale deployments
Optimizing Cloud Foundry and OpenStack for large scale deploymentsAnimesh Singh
 
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source TriumvirateCloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source TriumvirateAnimesh Singh
 
Introduction to Microservices and Cloud Native Application Architecture
Introduction to Microservices and Cloud Native Application ArchitectureIntroduction to Microservices and Cloud Native Application Architecture
Introduction to Microservices and Cloud Native Application ArchitectureDavid Currie
 
Docker OpenStack Cloud Foundry
Docker OpenStack Cloud FoundryDocker OpenStack Cloud Foundry
Docker OpenStack Cloud FoundryAnimesh Singh
 
Devops: Enabled Through a Recasting of Operational Roles
Devops: Enabled Through a Recasting of Operational RolesDevops: Enabled Through a Recasting of Operational Roles
Devops: Enabled Through a Recasting of Operational Rolescornelia davis
 
The Cloud Foundry Story
The Cloud Foundry StoryThe Cloud Foundry Story
The Cloud Foundry StoryVMware Tanzu
 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realistsKarthik Gaekwad
 
Finding and Organizing a Great Cloud Foundry User Group
Finding and Organizing a Great Cloud Foundry User GroupFinding and Organizing a Great Cloud Foundry User Group
Finding and Organizing a Great Cloud Foundry User GroupDaniel Krook
 
Cloud Foundry a Developer's Perspective
Cloud Foundry a Developer's PerspectiveCloud Foundry a Developer's Perspective
Cloud Foundry a Developer's PerspectiveDave McCrory
 
AWS Summit 2015 Tokyo Breakout: Global Large Scale Cloud Design and Cloud Nat...
AWS Summit 2015 Tokyo Breakout: Global Large Scale Cloud Design and Cloud Nat...AWS Summit 2015 Tokyo Breakout: Global Large Scale Cloud Design and Cloud Nat...
AWS Summit 2015 Tokyo Breakout: Global Large Scale Cloud Design and Cloud Nat...fast_retailing
 
Cloud Foundry Bootcamp
Cloud Foundry BootcampCloud Foundry Bootcamp
Cloud Foundry BootcampJoshua Long
 
Dissecting The PaaS Landscape
Dissecting The PaaS LandscapeDissecting The PaaS Landscape
Dissecting The PaaS LandscapeRishidot Research
 
Practical PaaS presentation
Practical PaaS presentationPractical PaaS presentation
Practical PaaS presentationhmalphettes
 
Containerized Cloud Computing - Redhat
Containerized Cloud Computing - RedhatContainerized Cloud Computing - Redhat
Containerized Cloud Computing - RedhatAmazon Web Services
 

Tendances (20)

Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
Part 4: Custom Buildpacks and Data Services (Pivotal Cloud Platform Roadshow)
 
Introduction to Platform-as-a-Service and Cloud Foundry
Introduction to Platform-as-a-Service and Cloud FoundryIntroduction to Platform-as-a-Service and Cloud Foundry
Introduction to Platform-as-a-Service and Cloud Foundry
 
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic RelationshipCloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
 
Run your Java code on Cloud Foundry
Run your Java code on Cloud FoundryRun your Java code on Cloud Foundry
Run your Java code on Cloud Foundry
 
Going Cloud Native with Cloud Foundry
Going Cloud Native with Cloud FoundryGoing Cloud Native with Cloud Foundry
Going Cloud Native with Cloud Foundry
 
Cloud Foundry Overview
Cloud Foundry OverviewCloud Foundry Overview
Cloud Foundry Overview
 
Optimizing Cloud Foundry and OpenStack for large scale deployments
Optimizing Cloud Foundry and OpenStack for large scale deploymentsOptimizing Cloud Foundry and OpenStack for large scale deployments
Optimizing Cloud Foundry and OpenStack for large scale deployments
 
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source TriumvirateCloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
 
Introduction to Microservices and Cloud Native Application Architecture
Introduction to Microservices and Cloud Native Application ArchitectureIntroduction to Microservices and Cloud Native Application Architecture
Introduction to Microservices and Cloud Native Application Architecture
 
Docker OpenStack Cloud Foundry
Docker OpenStack Cloud FoundryDocker OpenStack Cloud Foundry
Docker OpenStack Cloud Foundry
 
Devops: Enabled Through a Recasting of Operational Roles
Devops: Enabled Through a Recasting of Operational RolesDevops: Enabled Through a Recasting of Operational Roles
Devops: Enabled Through a Recasting of Operational Roles
 
The Cloud Foundry Story
The Cloud Foundry StoryThe Cloud Foundry Story
The Cloud Foundry Story
 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realists
 
Finding and Organizing a Great Cloud Foundry User Group
Finding and Organizing a Great Cloud Foundry User GroupFinding and Organizing a Great Cloud Foundry User Group
Finding and Organizing a Great Cloud Foundry User Group
 
Cloud Foundry a Developer's Perspective
Cloud Foundry a Developer's PerspectiveCloud Foundry a Developer's Perspective
Cloud Foundry a Developer's Perspective
 
AWS Summit 2015 Tokyo Breakout: Global Large Scale Cloud Design and Cloud Nat...
AWS Summit 2015 Tokyo Breakout: Global Large Scale Cloud Design and Cloud Nat...AWS Summit 2015 Tokyo Breakout: Global Large Scale Cloud Design and Cloud Nat...
AWS Summit 2015 Tokyo Breakout: Global Large Scale Cloud Design and Cloud Nat...
 
Cloud Foundry Bootcamp
Cloud Foundry BootcampCloud Foundry Bootcamp
Cloud Foundry Bootcamp
 
Dissecting The PaaS Landscape
Dissecting The PaaS LandscapeDissecting The PaaS Landscape
Dissecting The PaaS Landscape
 
Practical PaaS presentation
Practical PaaS presentationPractical PaaS presentation
Practical PaaS presentation
 
Containerized Cloud Computing - Redhat
Containerized Cloud Computing - RedhatContainerized Cloud Computing - Redhat
Containerized Cloud Computing - Redhat
 

En vedette

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
 
Semantic technologies for the Internet of Things
Semantic technologies for the Internet of Things Semantic technologies for the Internet of Things
Semantic technologies for the Internet of Things PayamBarnaghi
 
The Internet of Things, Ambient Intelligence, and the Move Towards Intelligen...
The Internet of Things, Ambient Intelligence, and the Move Towards Intelligen...The Internet of Things, Ambient Intelligence, and the Move Towards Intelligen...
The Internet of Things, Ambient Intelligence, and the Move Towards Intelligen...George Vanecek
 
Finding and-organizing Great Cloud Foundry User Groups
Finding and-organizing Great Cloud Foundry User GroupsFinding and-organizing Great Cloud Foundry User Groups
Finding and-organizing Great Cloud Foundry User GroupsAnimesh Singh
 
How to build an event-driven, polyglot serverless microservices framework on ...
How to build an event-driven, polyglot serverless microservices framework on ...How to build an event-driven, polyglot serverless microservices framework on ...
How to build an event-driven, polyglot serverless microservices framework on ...Animesh Singh
 
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
 
THE INTERNET OF THINGS
THE INTERNET OF THINGSTHE INTERNET OF THINGS
THE INTERNET OF THINGSRamana Reddy
 
IoT - IT 423 ppt
IoT - IT 423 pptIoT - IT 423 ppt
IoT - IT 423 pptMhae Lyn
 
Internet of Things
Internet of ThingsInternet of Things
Internet of ThingsMphasis
 
DEBS 2015 tutorial When Artificial Intelligence meets the Internet of Things
DEBS 2015 tutorial   When Artificial Intelligence meets the Internet of ThingsDEBS 2015 tutorial   When Artificial Intelligence meets the Internet of Things
DEBS 2015 tutorial When Artificial Intelligence meets the Internet of ThingsOpher Etzion
 
Internet of Things
Internet of ThingsInternet of Things
Internet of ThingsMphasis
 
Building a PaaS Platform like Bluemix on OpenStack
Building a PaaS Platform like Bluemix on OpenStackBuilding a PaaS Platform like Bluemix on OpenStack
Building a PaaS Platform like Bluemix on OpenStackAnimesh Singh
 
IAB3948 Wiring the internet of things with Node-RED
IAB3948 Wiring the internet of things with Node-REDIAB3948 Wiring the internet of things with Node-RED
IAB3948 Wiring the internet of things with Node-REDPeterNiblett
 
Semantics for the Web of Things
Semantics for the Web of ThingsSemantics for the Web of Things
Semantics for the Web of ThingsCarlos Pedrinaci
 
Internet of every thing
Internet of every thingInternet of every thing
Internet of every thingGabriel Manole
 
Dynamic Semantics for the Internet of Things
Dynamic Semantics for the Internet of Things Dynamic Semantics for the Internet of Things
Dynamic Semantics for the Internet of Things PayamBarnaghi
 
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...Animesh Singh
 
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & CloudantBuild Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & CloudantAnimesh Singh
 
Semantic Technologies for the Internet of Things: Challenges and Opportunities
Semantic Technologies for the Internet of Things: Challenges and Opportunities Semantic Technologies for the Internet of Things: Challenges and Opportunities
Semantic Technologies for the Internet of Things: Challenges and Opportunities PayamBarnaghi
 

En vedette (20)

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
 
Semantic technologies for the Internet of Things
Semantic technologies for the Internet of Things Semantic technologies for the Internet of Things
Semantic technologies for the Internet of Things
 
The Internet of Things, Ambient Intelligence, and the Move Towards Intelligen...
The Internet of Things, Ambient Intelligence, and the Move Towards Intelligen...The Internet of Things, Ambient Intelligence, and the Move Towards Intelligen...
The Internet of Things, Ambient Intelligence, and the Move Towards Intelligen...
 
Finding and-organizing Great Cloud Foundry User Groups
Finding and-organizing Great Cloud Foundry User GroupsFinding and-organizing Great Cloud Foundry User Groups
Finding and-organizing Great Cloud Foundry User Groups
 
How to build an event-driven, polyglot serverless microservices framework on ...
How to build an event-driven, polyglot serverless microservices framework on ...How to build an event-driven, polyglot serverless microservices framework on ...
How to build an event-driven, polyglot serverless microservices framework on ...
 
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...
 
THE INTERNET OF THINGS
THE INTERNET OF THINGSTHE INTERNET OF THINGS
THE INTERNET OF THINGS
 
IoT - IT 423 ppt
IoT - IT 423 pptIoT - IT 423 ppt
IoT - IT 423 ppt
 
Internet of Things
Internet of ThingsInternet of Things
Internet of Things
 
Dynamic stories
Dynamic storiesDynamic stories
Dynamic stories
 
DEBS 2015 tutorial When Artificial Intelligence meets the Internet of Things
DEBS 2015 tutorial   When Artificial Intelligence meets the Internet of ThingsDEBS 2015 tutorial   When Artificial Intelligence meets the Internet of Things
DEBS 2015 tutorial When Artificial Intelligence meets the Internet of Things
 
Internet of Things
Internet of ThingsInternet of Things
Internet of Things
 
Building a PaaS Platform like Bluemix on OpenStack
Building a PaaS Platform like Bluemix on OpenStackBuilding a PaaS Platform like Bluemix on OpenStack
Building a PaaS Platform like Bluemix on OpenStack
 
IAB3948 Wiring the internet of things with Node-RED
IAB3948 Wiring the internet of things with Node-REDIAB3948 Wiring the internet of things with Node-RED
IAB3948 Wiring the internet of things with Node-RED
 
Semantics for the Web of Things
Semantics for the Web of ThingsSemantics for the Web of Things
Semantics for the Web of Things
 
Internet of every thing
Internet of every thingInternet of every thing
Internet of every thing
 
Dynamic Semantics for the Internet of Things
Dynamic Semantics for the Internet of Things Dynamic Semantics for the Internet of Things
Dynamic Semantics for the Internet of Things
 
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
 
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & CloudantBuild Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
 
Semantic Technologies for the Internet of Things: Challenges and Opportunities
Semantic Technologies for the Internet of Things: Challenges and Opportunities Semantic Technologies for the Internet of Things: Challenges and Opportunities
Semantic Technologies for the Internet of Things: Challenges and Opportunities
 

Similaire à Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework - OpenWhisk

The twelve factor app
The twelve factor appThe twelve factor app
The twelve factor appRavi Okade
 
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the Cloud
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the CloudMongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the Cloud
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the CloudMongoDB
 
12 Factor App Methodology
12 Factor App Methodology12 Factor App Methodology
12 Factor App Methodologylaeshin park
 
Build 12-Factor apps with Docker
Build 12-Factor apps with DockerBuild 12-Factor apps with Docker
Build 12-Factor apps with DockerJohn Zaccone
 
Handling Asynchronous Workloads With OpenShift and Iron.io
Handling Asynchronous Workloads With OpenShift and Iron.ioHandling Asynchronous Workloads With OpenShift and Iron.io
Handling Asynchronous Workloads With OpenShift and Iron.ioIvan Dwyer
 
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...Jack-Junjie Cai
 
Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-ServiceMigrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-ServiceDavid Currie
 
Evolving your Architecture to MicroServices
Evolving your Architecture to MicroServicesEvolving your Architecture to MicroServices
Evolving your Architecture to MicroServicesHector Tapia
 
Intro Docker to Loire Atlantique
Intro Docker to Loire AtlantiqueIntro Docker to Loire Atlantique
Intro Docker to Loire AtlantiqueJulien Barbier
 
.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los AngelesVMware Tanzu
 
Multi-Containers Orchestration with Live Migration and High-Availability for ...
Multi-Containers Orchestration with Live Migration and High-Availability for ...Multi-Containers Orchestration with Live Migration and High-Availability for ...
Multi-Containers Orchestration with Live Migration and High-Availability for ...Jelastic Multi-Cloud PaaS
 
JAX 2014 - The PaaS to a better IT architecture.
JAX 2014 - The PaaS to a better IT architecture.JAX 2014 - The PaaS to a better IT architecture.
JAX 2014 - The PaaS to a better IT architecture.Sebastian Faulhaber
 
ThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.jsThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.jsBrad Williams
 
Executive Briefing: The Why, What, and Where of Containers
Executive Briefing: The Why, What, and Where of ContainersExecutive Briefing: The Why, What, and Where of Containers
Executive Briefing: The Why, What, and Where of ContainersNVISIA
 
Java Microservices HJUG
Java Microservices HJUGJava Microservices HJUG
Java Microservices HJUGLana Kalashnyk
 
Developing Hybrid Cloud Applications
Developing Hybrid Cloud ApplicationsDeveloping Hybrid Cloud Applications
Developing Hybrid Cloud ApplicationsDaniel Berg
 
Event Bus as Backbone for Decoupled Microservice Choreography - Lecture and W...
Event Bus as Backbone for Decoupled Microservice Choreography - Lecture and W...Event Bus as Backbone for Decoupled Microservice Choreography - Lecture and W...
Event Bus as Backbone for Decoupled Microservice Choreography - Lecture and W...Lucas Jellema
 
Private PaaS & Container-as-a-Service for ISVs and Enterprise - Use Cases and...
Private PaaS & Container-as-a-Service for ISVs and Enterprise - Use Cases and...Private PaaS & Container-as-a-Service for ISVs and Enterprise - Use Cases and...
Private PaaS & Container-as-a-Service for ISVs and Enterprise - Use Cases and...Dmitry Lazarenko
 
Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015WaveMaker, Inc.
 

Similaire à Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework - OpenWhisk (20)

The twelve factor app
The twelve factor appThe twelve factor app
The twelve factor app
 
Docker12 factor
Docker12 factorDocker12 factor
Docker12 factor
 
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the Cloud
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the CloudMongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the Cloud
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the Cloud
 
12 Factor App Methodology
12 Factor App Methodology12 Factor App Methodology
12 Factor App Methodology
 
Build 12-Factor apps with Docker
Build 12-Factor apps with DockerBuild 12-Factor apps with Docker
Build 12-Factor apps with Docker
 
Handling Asynchronous Workloads With OpenShift and Iron.io
Handling Asynchronous Workloads With OpenShift and Iron.ioHandling Asynchronous Workloads With OpenShift and Iron.io
Handling Asynchronous Workloads With OpenShift and Iron.io
 
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
 
Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-ServiceMigrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
 
Evolving your Architecture to MicroServices
Evolving your Architecture to MicroServicesEvolving your Architecture to MicroServices
Evolving your Architecture to MicroServices
 
Intro Docker to Loire Atlantique
Intro Docker to Loire AtlantiqueIntro Docker to Loire Atlantique
Intro Docker to Loire Atlantique
 
.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles
 
Multi-Containers Orchestration with Live Migration and High-Availability for ...
Multi-Containers Orchestration with Live Migration and High-Availability for ...Multi-Containers Orchestration with Live Migration and High-Availability for ...
Multi-Containers Orchestration with Live Migration and High-Availability for ...
 
JAX 2014 - The PaaS to a better IT architecture.
JAX 2014 - The PaaS to a better IT architecture.JAX 2014 - The PaaS to a better IT architecture.
JAX 2014 - The PaaS to a better IT architecture.
 
ThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.jsThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.js
 
Executive Briefing: The Why, What, and Where of Containers
Executive Briefing: The Why, What, and Where of ContainersExecutive Briefing: The Why, What, and Where of Containers
Executive Briefing: The Why, What, and Where of Containers
 
Java Microservices HJUG
Java Microservices HJUGJava Microservices HJUG
Java Microservices HJUG
 
Developing Hybrid Cloud Applications
Developing Hybrid Cloud ApplicationsDeveloping Hybrid Cloud Applications
Developing Hybrid Cloud Applications
 
Event Bus as Backbone for Decoupled Microservice Choreography - Lecture and W...
Event Bus as Backbone for Decoupled Microservice Choreography - Lecture and W...Event Bus as Backbone for Decoupled Microservice Choreography - Lecture and W...
Event Bus as Backbone for Decoupled Microservice Choreography - Lecture and W...
 
Private PaaS & Container-as-a-Service for ISVs and Enterprise - Use Cases and...
Private PaaS & Container-as-a-Service for ISVs and Enterprise - Use Cases and...Private PaaS & Container-as-a-Service for ISVs and Enterprise - Use Cases and...
Private PaaS & Container-as-a-Service for ISVs and Enterprise - Use Cases and...
 
Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015
 

Plus de Animesh Singh

Machine Learning Exchange (MLX)
Machine Learning Exchange (MLX)Machine Learning Exchange (MLX)
Machine Learning Exchange (MLX)Animesh Singh
 
KFServing Payload Logging for Trusted AI
KFServing Payload Logging for Trusted AIKFServing Payload Logging for Trusted AI
KFServing Payload Logging for Trusted AIAnimesh Singh
 
KFServing and Kubeflow Pipelines
KFServing and Kubeflow PipelinesKFServing and Kubeflow Pipelines
KFServing and Kubeflow PipelinesAnimesh Singh
 
Kubeflow Distributed Training and HPO
Kubeflow Distributed Training and HPOKubeflow Distributed Training and HPO
Kubeflow Distributed Training and HPOAnimesh Singh
 
Kubeflow Pipelines (with Tekton)
Kubeflow Pipelines (with Tekton)Kubeflow Pipelines (with Tekton)
Kubeflow Pipelines (with Tekton)Animesh Singh
 
KFServing - Serverless Model Inferencing
KFServing - Serverless Model InferencingKFServing - Serverless Model Inferencing
KFServing - Serverless Model InferencingAnimesh Singh
 
End to end Machine Learning using Kubeflow - Build, Train, Deploy and Manage
End to end Machine Learning using Kubeflow - Build, Train, Deploy and ManageEnd to end Machine Learning using Kubeflow - Build, Train, Deploy and Manage
End to end Machine Learning using Kubeflow - Build, Train, Deploy and ManageAnimesh Singh
 
Defend against adversarial AI using Adversarial Robustness Toolbox
Defend against adversarial AI using Adversarial Robustness Toolbox Defend against adversarial AI using Adversarial Robustness Toolbox
Defend against adversarial AI using Adversarial Robustness Toolbox Animesh Singh
 
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and IstioAdvanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and IstioAnimesh Singh
 
Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]
Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]
Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]Animesh Singh
 
Trusted, Transparent and Fair AI using Open Source
Trusted, Transparent and Fair AI using Open SourceTrusted, Transparent and Fair AI using Open Source
Trusted, Transparent and Fair AI using Open SourceAnimesh Singh
 
AIF360 - Trusted and Fair AI
AIF360 - Trusted and Fair AIAIF360 - Trusted and Fair AI
AIF360 - Trusted and Fair AIAnimesh Singh
 
AI & Machine Learning Pipelines with Knative
AI & Machine Learning Pipelines with KnativeAI & Machine Learning Pipelines with Knative
AI & Machine Learning Pipelines with KnativeAnimesh Singh
 
Fabric for Deep Learning
Fabric for Deep LearningFabric for Deep Learning
Fabric for Deep LearningAnimesh Singh
 
Microservices, Kubernetes and Istio - A Great Fit!
Microservices, Kubernetes and Istio - A Great Fit!Microservices, Kubernetes and Istio - A Great Fit!
Microservices, Kubernetes and Istio - A Great Fit!Animesh Singh
 
Automated Lifecycle Management - CloudFoundry on OpenStack
Automated Lifecycle Management - CloudFoundry on OpenStackAutomated Lifecycle Management - CloudFoundry on OpenStack
Automated Lifecycle Management - CloudFoundry on OpenStackAnimesh Singh
 
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry) IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry) Animesh Singh
 

Plus de Animesh Singh (19)

Machine Learning Exchange (MLX)
Machine Learning Exchange (MLX)Machine Learning Exchange (MLX)
Machine Learning Exchange (MLX)
 
KFServing Payload Logging for Trusted AI
KFServing Payload Logging for Trusted AIKFServing Payload Logging for Trusted AI
KFServing Payload Logging for Trusted AI
 
KFServing and Kubeflow Pipelines
KFServing and Kubeflow PipelinesKFServing and Kubeflow Pipelines
KFServing and Kubeflow Pipelines
 
KFServing and Feast
KFServing and FeastKFServing and Feast
KFServing and Feast
 
Kubeflow Distributed Training and HPO
Kubeflow Distributed Training and HPOKubeflow Distributed Training and HPO
Kubeflow Distributed Training and HPO
 
Kubeflow Pipelines (with Tekton)
Kubeflow Pipelines (with Tekton)Kubeflow Pipelines (with Tekton)
Kubeflow Pipelines (with Tekton)
 
KFServing - Serverless Model Inferencing
KFServing - Serverless Model InferencingKFServing - Serverless Model Inferencing
KFServing - Serverless Model Inferencing
 
End to end Machine Learning using Kubeflow - Build, Train, Deploy and Manage
End to end Machine Learning using Kubeflow - Build, Train, Deploy and ManageEnd to end Machine Learning using Kubeflow - Build, Train, Deploy and Manage
End to end Machine Learning using Kubeflow - Build, Train, Deploy and Manage
 
Defend against adversarial AI using Adversarial Robustness Toolbox
Defend against adversarial AI using Adversarial Robustness Toolbox Defend against adversarial AI using Adversarial Robustness Toolbox
Defend against adversarial AI using Adversarial Robustness Toolbox
 
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and IstioAdvanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
 
Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]
Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]
Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]
 
Trusted, Transparent and Fair AI using Open Source
Trusted, Transparent and Fair AI using Open SourceTrusted, Transparent and Fair AI using Open Source
Trusted, Transparent and Fair AI using Open Source
 
AIF360 - Trusted and Fair AI
AIF360 - Trusted and Fair AIAIF360 - Trusted and Fair AI
AIF360 - Trusted and Fair AI
 
AI & Machine Learning Pipelines with Knative
AI & Machine Learning Pipelines with KnativeAI & Machine Learning Pipelines with Knative
AI & Machine Learning Pipelines with Knative
 
Fabric for Deep Learning
Fabric for Deep LearningFabric for Deep Learning
Fabric for Deep Learning
 
Microservices, Kubernetes and Istio - A Great Fit!
Microservices, Kubernetes and Istio - A Great Fit!Microservices, Kubernetes and Istio - A Great Fit!
Microservices, Kubernetes and Istio - A Great Fit!
 
Automated Lifecycle Management - CloudFoundry on OpenStack
Automated Lifecycle Management - CloudFoundry on OpenStackAutomated Lifecycle Management - CloudFoundry on OpenStack
Automated Lifecycle Management - CloudFoundry on OpenStack
 
Watson on bluemix
Watson on bluemixWatson on bluemix
Watson on bluemix
 
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry) IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
 

Dernier

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 

Dernier (20)

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 

Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework - OpenWhisk

  • 1. Cloud Native, Event Driven, Serverless Micrsoservices Framework OpenWhisk @AnimeshSingh
  • 2. 2 Agenda! •  What does it mean to be Cloud Native?! •  Twelve Factor Apps! •  What are Microservices?! •  Developing and Deploying Microservices using OpenWhisk!
  • 3. 3 What does it mean to be Cloud Native?! •  Clean contract with underlying OS to ensure maximum portability! •  Scale elastically without significant changes to tooling, architecture or development practices! •  Resilient to inevitable failures in the infrastructure and application! •  Instrumented to provide both technical and business insight! •  Utilize cloud services e.g. storage, queuing, caching, …! •  Rapid and repeatable deployments to maximise agility! •  Automated setup to minimize time and cost for new developers!
  • 5. Twelve Factors I.  Codebase II.  Dependencies III.  Config IV.  Backing Services V.  Build, release, run VI.  Processes VII. Port binding VIII. Concurrency IX.  Disposability X.  Dev/prod parity XI.  Logs XII. Admin processes •  One codebase tracked in revision control, many deploys
  • 6. Twelve Factors I.  Codebase II.  Dependencies III.  Config IV.  Backing Services V.  Build, release, run VI.  Processes VII. Port binding VIII. Concurrency IX.  Disposability X.  Dev/prod parity XI.  Logs XII. Admin processes •  Explicitly declare and isolate dependencies •  Typically platform dependent e.g. npm, bundler or Liberty feature manager •  Never rely on system-wide dependencies
  • 7. Twelve Factors I.  Codebase II.  Dependencies III.  Config IV.  Backing Services V.  Build, release, run VI.  Processes VII. Port binding VIII. Concurrency IX.  Disposability X.  Dev/prod parity XI.  Logs XII. Admin processes •  Store config in the environment •  Separate config from source •  Avoid ‘config groups’
  • 8. Twelve Factors I.  Codebase II.  Dependencies III.  Config IV.  Backing Services V.  Build, release, run VI.  Processes VII. Port binding VIII. Concurrency IX.  Disposability X.  Dev/prod parity XI.  Logs XII. Admin processes •  Treat backing services as attached resources •  Local and remote resources should be treated identically
  • 9. Twelve Factors I.  Codebase II.  Dependencies III.  Config IV.  Backing Services V.  Build, release, run VI.  Processes VII. Port binding VIII. Concurrency IX.  Disposability X.  Dev/prod parity XI.  Logs XII. Admin processes •  Strictly separate build and run stages
  • 10. Twelve Factors I.  Codebase II.  Dependencies III.  Config IV.  Backing Services V.  Build, release, run VI.  Processes VII. Port binding VIII. Concurrency IX.  Disposability X.  Dev/prod parity XI.  Logs XII. Admin processes •  Execute the app as one or more stateless processes •  Never rely on sticky sessions
  • 11. Twelve Factors I.  Codebase II.  Dependencies III.  Config IV.  Backing Services V.  Build, release, run VI.  Processes VII. Port binding VIII. Concurrency IX.  Disposability X.  Dev/prod parity XI.  Logs XII. Admin processes •  Export services via port binding
  • 12. Twelve Factors I.  Codebase II.  Dependencies III.  Config IV.  Backing Services V.  Build, release, run VI.  Processes VII. Port binding VIII. Concurrency IX.  Disposability X.  Dev/prod parity XI.  Logs XII. Admin processes •  Scale out via the process model •  Individual VMs can only scale vertically so far •  Stateless nature makes scaling simple
  • 13. Twelve Factors I.  Codebase II.  Dependencies III.  Config IV.  Backing Services V.  Build, release, run VI.  Processes VII. Port binding VIII. Concurrency IX.  Disposability X.  Dev/prod parity XI.  Logs XII. Admin processes •  Maximize robustness with fast startup and graceful shutdown •  Application instances are disposable •  Crash-only design is logical conclusion
  • 14. Twelve Factors I.  Codebase II.  Dependencies III.  Config IV.  Backing Services V.  Build, release, run VI.  Processes VII. Port binding VIII. Concurrency IX.  Disposability X.  Dev/prod parity XI.  Logs XII. Admin processes •  Keep development, staging, and production as similar as possible •  Use the same backing services in each environment
  • 15. Twelve Factors I.  Codebase II.  Dependencies III.  Config IV.  Backing Services V.  Build, release, run VI.  Processes VII. Port binding VIII. Concurrency IX.  Disposability X.  Dev/prod parity XI.  Logs XII. Admin processes •  Treat logs as event streams •  Don’t write to log files
  • 16. Twelve Factors I.  Codebase II.  Dependencies III.  Config IV.  Backing Services V.  Build, release, run VI.  Processes VII. Port binding VIII. Concurrency IX.  Disposability X.  Dev/prod parity XI.  Logs XII. Admin processes •  Run admin/management tasks as one-off processes •  E.g. database migrations or for debugging
  • 31. Monolithic versus Microservices Monolithic Microservice Architecture Built as a single logical executable (typically the server-side part of a three tier client-server-database architecture) Built as a suite of small services, each running separately and communicating with lightweight mechanisms Modularity Based on language features Based on business capabilities Agility Changes to the system involve building and deploying a new version of the entire application Changes can be applied to each service independently Scaling Entire application scaled horizontally behind a load-balancer Each service scaled independently when needed Implementation Typically written in one language Each service implemented in the language that best fits the need Maintainability Large code base intimidating to new developers Smaller code base easier to manage Transaction ACID BASE 31
  • 32. •  Challenges with today’s models:! •  Complex to construct applications driven by events! •  Lots of idle time — need to pay for resources even if no request is being handled (most APIs / apps don’t receive super-high load)! •  Scaling capacity is coarse granular, relatively slow & complex! Motivation and Introduction – Today! Handles request, returns results, and goes into idle mode, waiting for next request 2! App! CF/Container/VM! Receives request,! e.g. HTTP request against API! 1b! Polls for change,! e.g. whether new data arrived, record changed, new data record, temp above 60 degrees, etc.! 1a!
  • 33. Motivation and Introduction! OpenWhisk! Actions (Swift, Node, Java, … code) Trigger, invoking whisk action! e.g. HTTP request against API, event about new data record, temp above 60 degrees, etc.! 1! … Deploys action within millisecs, runs it, returns results and frees up resources 2! … …
  • 34. Execute code on demand in a highly scalable serverless environment Bluemix OpenWhisk Open Source & Open Ecosystem Take advantage of easily integrating with an ever growing list of event providers and consumers Action Chaining Develop independent pieces of code and quickly connect them and ecosystem services together Scale on demand, no administration Upload your code and let it run. There is no need to think about infrastructure or worry about peak projections. Integrated Container Support Run custom code put in a Docker container and never worry about vendor lock-in 3 Meet OpenWhisk
  • 35. 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 en vironment.! Instant Runtimes App-centric runtime ! environments based on ! Cloud Foundry.! IBM Containers Portable and consistent ! delivery of your app ! without having to manage a n OS.! Virtual Machines Get the most flexibility ! and control over your ! environment with VMs.!
  • 36. 36 Bluemix Compute Models! Cloud Foundry application! Docker Container! Virtual Machine! Consistent experience:! •  Common service binding & consumption model! •  Common user ID & permissions model! •  Ability to hook into common routing layer! expanding Level of abstraction Flexibility Event Driven! application!
  • 37. High-level architecture Triggers: A class of events emitted by event sources." Actions: Encapsulate the actual code to be executed which support multiple language bindings. Actions invoke any part of an open ecosystem. Rules: An association between a trigger and an action." Packages: Describe external services in a uniform manner." " Combined these allow developers to compose solutions using modern abstraction and chaining which can be created, accessed, updated and deleted via the CLI OpenWhisk provides a distributed compute service to execute application logic in response to events. !
  • 38. OpenWhisk: How does it work? } 1 Event Providers OpenWhisk Cloudant Git Weather … … Data event occurs, e.g. - Commit on a Git Repository - CRUD operation on Cloudant - …. Trigger execution of associated OpenWhisk action 2 … JS Swift! Docker …
  • 39. OpenWhisk: How does it work? 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
  • 40. Some usage Scenarios OpenWhisk can help power various mobile, web and IoT app usecases by simplifying the programming model of orchestrating various services using events without a dedicated backend. Digital app workloads Big Data/Analytics pipeline Complex data pipeline for Big Data/ Analytics tasks can be scripted using changes in data services or streams for near real-time analytics and feedback. DevOps & infrastructure as code OpenWhisk can be used to automate DevOps pipeline based on events triggered from successful builds or completed staging or a go-live event. Micro-Services builder Whisk can be used to easily build micro-services given the footprint and programming model desired by micro services
  • 41. 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 T A R
  • 42. Programming model Trigger: „A class of events that can happen“ T
  • 43. Programming model Actions: „An event-handler, i.e. code that runs in response to an event“ A
  • 44. Programming model Actions: Multi-runtime support, e.g. JavaScript!A function main(msg) { return { message: 'Hello, ' + msg.name + ' from ' + msg.place }; };
  • 45. Programming model Actions: Multi-runtime support, e.g. Swift!A func main(params:[String:Any]) -> [String:Any] { var reply = [String:Any] () if let name = params[“name”] as? String { print(“Hello (name)”) reply[“msg”] = “Goodbye (name)” } return reply }
  • 46. Programming model Actions: Multi-runtime support, e.g. Docker containers!A
  • 47. Programming model Rules: „An association of a trigger and an action“ R R := T A
  • 48. Programming model Actions: Can be chained to create sequences to increase flexibility and foster reuse! A AA := A1 + A2 + A3 AB := A2 + A1 + A3 AC := A3 + A1 + A2
  • 49. Programming model Packages: „A shared collection of triggers and actions“P A A read write T changes A translate A forecast A post T topic Open Source A myAction T myFeed Yours T commit Third Party
  • 50. Abstract away infrastructure so that you can focus on business logic and innovating 4 OpenWhisk to usher in new era of extreme simplification in application development •  You can innovate faster through an open ecosystem including powerful services from IBM like Watson. • You can quickly build apps and microservices quickly without having to worry about infrastructure, scalability, or resiliency. •  You can easily work in teams through uniquely powerful chaining and choice of programming language including Swift. •  Easily extend functionality with Docker. IBM Bluemix OpenWhisk