SlideShare a Scribd company logo
© Copyright 2014 Pivotal. All rights reserved.© Copyright 2014 Pivotal. All rights reserved.
To Microservices and Beyond!
1
Simon Elisha (@simon_elisha) - CTO & Director of Field Engineering
© Copyright 2014 Pivotal. All rights reserved. 2
IT SEEMS THERE’S SOME HYPE…
M!CR0S3RV!C3$!!!!!
© Copyright 2014 Pivotal. All rights reserved.
DEFINE: Microservice
3
Loosely coupled service oriented
architecture with bounded contexts
If every service has to be updated in
concert, it’s not loosely coupled!
If you have to know about surrounding
services you don’t have a bounded context.
© Copyright 2014 Pivotal. All rights reserved. 4
Not Traditional (ESB-centric) SOA
Enterprise Service Bus
Service Service Service Service
Service Service Service Service
UI UI
© Copyright 2014 Pivotal. All rights reserved. 5
But Microservices!
© Copyright 2014 Pivotal. All rights reserved. 6
But why?
© Copyright 2014 Pivotal. All rights reserved. 7
Issues We’ll Confront
• Microservices are not an inherently superior architecture.
• We’re still building big systems from smaller things.
• Just like Docker won’t save the world, neither will
microservices. They’re not free.
• You absolutely cannot forget about data.
• Let’s begin!
© Copyright 2014 Pivotal. All rights reserved. 8
Not an end in themselves…
It’s about Continuous Delivery!
© Copyright 2014 Pivotal. All rights reserved.
What is Continuous Delivery?
9
$
Business
DevelopmentQA
Operations
Customer
© Copyright 2014 Pivotal. All rights reserved.
What is Continuous Delivery?
10
$
© Copyright 2014 Pivotal. All rights reserved. 11
Keep the Wheel Spinning!
Design
Develop
Test
Customer
Feedback
Customer
Delivery
Analytics
© Copyright 2014 Pivotal. All rights reserved. 12
Prod
Release
#1
Prod
Release
#2
Prod
Release
#3
AgileDevelopm
ent
Waterfall
Organization!
© Copyright 2014 Pivotal. All rights reserved.
Silo Delivery
13
Project
Mgmt
UX Dev QA DBA
Sys
Admin
Net
Admin
Storage
Admin
Adapted from: http://www.slideshare.net/adriancockcroft/goto-berlin
MONOLITHIC DELIVERY
© Copyright 2014 Pivotal. All rights reserved.
Continuous Delivery
14
Product
Mgr
UX Dev QA DBA
Sys
Admin
Net
Admin
Storage
Admin
BUSINESS CAPABILITY TEAMS
USING MICROSERVICES
PLATFORM OPERATIONS
TEAM
Adapted from: http://www.slideshare.net/adriancockcroft/goto-berlin
© Copyright 2014 Pivotal. All rights reserved.
Continuous Delivery
15
Product
Mgr
UX Dev QA DBA
Sys
Admin
Net
Admin
Storage
Admin
BUSINESS CAPABILITY TEAMS
USING MICROSERVICES
PLATFORM OPERATIONS
TEAM
Adapted from: http://www.slideshare.net/adriancockcroft/goto-berlin
Self
Service
API
© Copyright 2014 Pivotal. All rights reserved. 16
INVENTORY
Prod Release
Prod Release
Prod Release
CATALOG
Prod Release
Prod Release
Prod Release
REVIEWS
Prod Release
Prod Release
Prod Release
SHIPPING
Prod Release
Prod Release
Prod Release
© Copyright 2014 Pivotal. All rights reserved. 17
Microservices Enabling Continuous Delivery
• Decoupling Capabilities -> Decoupling Change Cycles
• Product Ownership: Tip to Tail
• We Build and Operate What We Understand BEST
• We Collaborate via API Contracts
• Microservice to Microservice
• Microservice to Platform
© Copyright 2014 Pivotal. All rights reserved. 18
Systems over Services
Composition over Components
© Copyright 2014 Pivotal. All rights reserved.
Microframeworks for Microservices
19
Spring Boot
http://projects.spring.io/spring-boot
Dropwizard
http://dropwizard.io
© Copyright 2014 Pivotal. All rights reserved.
It can get pretty small…
20
@RestController
class ThisWillActuallyRun {
@RequestMapping("/")
String home() {
Hello World!
}
}
© Copyright 2014 Pivotal. All rights reserved.
With Spring Data REST!
21
http://projects.spring.io/spring-data-rest
@Entity
@Table(name = "city")
public class City implements Serializable {
@Id
@GeneratedValue
private Long id;
@Column(nullable = false)
private String name;
@Column(nullable = false)
private String county;
//...
}
© Copyright 2014 Pivotal. All rights reserved.
With Spring Data REST!
22
http://projects.spring.io/spring-data-rest
@RepositoryRestResource(collectionResourceRel = "cities", path = "cities")
public interface CityRepository extends PagingAndSortingRepository<City, Long> {}
@Configuration
@ComponentScan
@EnableAutoConfiguration
@EnableJpaRepositories
@Import(RepositoryRestMvcConfiguration.class)
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
© Copyright 2014 Pivotal. All rights reserved.
With Spring Data REST!
23
http://projects.spring.io/spring-data-rest
{
"_links" : {
"next" : {
"href" : "http://localhost:8080/cities?page=1&size=20"
},
"self" : {
"href" : "http://localhost:8080/cities{?page,size,sort}",
"templated" : true
}
},
"_embedded" : {
"cities" : [ {
"name" : "HOLTSVILLE",
"county" : "SUFFOLK",
"stateCode" : "NY",
"postalCode" : "00501",
"latitude" : "+40.922326",
"longitude" : "-072.637078",
© Copyright 2014 Pivotal. All rights reserved.
But No Microservice is an Island…
24
© Copyright 2014 Pivotal. All rights reserved.
Example Distributed System: Minified
25
© Copyright 2014 Pivotal. All rights reserved. 26
Some emergent features of microservices
systems…
• Distributed/Versioned Configuration
• Service Registration/Discovery
• Routing/Load Balancing
• Fault Tolerance (Circuit Breakers, Bulkheads, …)
© Copyright 2014 Pivotal. All rights reserved.
Example: Coordination Boiler Plate
27
© Copyright 2014 Pivotal. All rights reserved. 28
• Eureka
• Hystrix + Turbine
• Ribbon
• Feign
• Zuul
• Archaius
+
http://netflix.github.io
© Copyright 2014 Pivotal. All rights reserved. 29
http://projects.spring.io/spring-cloud
© Copyright 2014 Pivotal. All rights reserved.
Example: Spring Cloud + Netflix OSS
30
© Copyright 2014 Pivotal. All rights reserved. 31
Operationalized
Architecture
You have to pay for your lunch!
© Copyright 2014 Pivotal. All rights reserved.© Copyright 2014 Pivotal. All rights reserved. 32
http://highscalability.com/blog/2014/4/8/microservices-not-a-free-lunch.html
© Copyright 2014 Pivotal. All rights reserved. 33
Paying for your lunch…
• Significant Operations Overhead
• Substantial DevOps Skills Required
• Implicit Interfaces
• Duplication of Effort
• Distributed System Complexity
• Asynchronicity is Difficult!
• Testability Challenges
© Copyright 2014 Pivotal. All rights reserved.
You must be this tall
to use
Microservices…
34
http://martinfowler.com/bliki/MicroservicePrerequisites.html
https://www.flickr.com/photos/gusset/3723961589
• RAPID PROVISIONING
• BASIC MONITORING
• RAPID APPLICATION DEPLOYMENT
• DEVOPS CULTURE
© Copyright 2014 Pivotal. All rights reserved.
It takes a platform…
35
http://techblog.netflix.com/2013/01/optimizing-netflix-api.html
http://techblog.netflix.com/2014/03/the-netflix-dynamic-scripting-platform.html
© Copyright 2014 Pivotal. All rights reserved.
It takes a platform…
36
Pivotal CF Spring Cloud
© Copyright 2014 Pivotal. All rights reserved. 37
Platform Features
• Environment Provisioning
• On-Demand/Automatic Scaling
• Failover/Resilience
• Routing/Load Balancing
• Data Service Operations
• Monitoring
© Copyright 2014 Pivotal. All rights reserved.
Environment Provisioning/App Deployment
38
Router
Cloud Controller
Service Broker
Node(s)
DEA
DEA
DEA
DEA
Blobstore DB
Runtime
1. Upload bits/metadata
2. Create/bind services
3. Stage via Buildpack
4. Deploy via Container
push app
+ app MD
SC
+ =
http://docs.cloudfoundry.org/devguide/deploy-apps/
© Copyright 2014 Pivotal. All rights reserved.
Environment Provisioning/App Deployment
39
Router
Cloud Controller
DEA
Blobstore DB
Runtime
Detect Compile Upload
No
System
Buildpacks
+ =
Yes
http://docs.cloudfoundry.org/buildpacks/
© Copyright 2014 Pivotal. All rights reserved.
Deployment/Load Balancing/Scaling
40
Blobstore
Router
Cloud Controller
DEA
Messaging (NATS)
DEA DEA
Runtime
Access
App
http://docs.cloudfoundry.org/concepts/architecture/warden.html
Container Container
© Copyright 2014 Pivotal. All rights reserved.
Failover/Resilience
41
Blobstore
Router
Cloud Controller
DEA
Messaging (NATS)
DEA DEA
Runtime
Health Manager
Actual StateDesired State
http://docs.cloudfoundry.org/concepts/architecture/#hm9k
Container Container Container
© Copyright 2014 Pivotal. All rights reserved.
Data Service Operations: Cluster Provisioning
42
Blobstore
BOSH
Health Monitor
DB
Deploy my
Services
IaaS
Worker VMsBOSH Director
NATS
Cassandra Node
Target VM
Cassandra Node
Target VM
Cassandra Node
Target VM
http://bosh.cloudfoundry.org/
© Copyright 2014 Pivotal. All rights reserved.
DB
Router
Data Service Operations: Application Binding
43
Service
credentials
reserve resources
obtain connection data
CLI Cloud
Controller
Service
Broker
Data
Service
Runtime
create service (HTTP)
bind service (HTTP)
create service (HTTP)
bind service (HTTP)
http://docs.cloudfoundry.org/services/api.html
© Copyright 2014 Pivotal. All rights reserved.
Monitoring
44
© Copyright 2014 Pivotal. All rights reserved. 45
It’s All About the Data
What about the BIG QUESTIONS?
© Copyright 2014 Pivotal. All rights reserved.
This won’t work…
46
© Copyright 2014 Pivotal. All rights reserved. 47
Instead!
© Copyright 2014 Pivotal. All rights reserved.
Bounded Contexts
48
Movie Movie
Actor
Genre
Media
Type
Media
Type
Kiosk
Location
Media
Product
Catalog
Inventory
© Copyright 2014 Pivotal. All rights reserved.
Polyglot Persistence
49
REST XYou shall not pass…
© Copyright 2014 Pivotal. All rights reserved.
But I have a question!
50
REST XYou shall not pass…
?
?
? ?
?
?
© Copyright 2014 Pivotal. All rights reserved.
Lambda Architecture
51
© Copyright 2014 Pivotal. All rights reserved.
Join via Events!
52
© Copyright 2014 Pivotal. All rights reserved. 53
http://projects.spring.io/spring-xd/
© Copyright 2014 Pivotal. All rights reserved. 54
© Copyright 2014 Pivotal. All rights reserved.
Redbox Conceptual Workflow
55
© Copyright 2014 Pivotal. All rights reserved.
SpringBox Microservices
56
Catalog Service
Inventory Service
Kiosk
Kiosk
Kiosk
Reservation
Service
https://github.com/cf-platform-eng/springbox-datacloud
© Copyright 2014 Pivotal. All rights reserved.
…and if you have a question:
57
Kiosk
Kiosk
Kiosk
Speed Layer
Batch Layer
Serving Layer
Event
Ingest
https://github.com/cf-platform-eng/springbox-datacloud
“What movie genres are most popular in what geographic locations?”
© Copyright 2014 Pivotal. All rights reserved.
“What movie genres are most popular in
what geographic locations?”
58
// Aggregate preferences across all kiosks:
stream create --name kiosk_agg_prefs --definition "rabbit --
queues=lambda.kiosk.events | field-value-counter --fieldName=genreIds"
// Tap aggregate preferences, filter for kiosk #1:
stream create --name kiosk_1_prefs --definition "tap:stream:kiosk_agg_prefs > filter
--expression=#jsonPath(payload,'$.locationId').equals(1) | field-value-counter --
fieldName=genreIds"
© Copyright 2014 Pivotal. All rights reserved.
“What movie genres are most popular in
what geographic locations?”
59
field-value-counter display --name kiosk_agg_prefs
field-value-counter display=kiosk_agg_prefs
------------------------------------------- - -----
VALUE - COUNT
Action | 14
Adventure | 6
Comedy | 27
Sci-Fi | 18
© Copyright 2014 Pivotal. All rights reserved. 60
Where We’ve Been…
• Microservices are an enabler to Continuous Delivery.
• Less about services, more about composed distributed
systems. Patterns can help.
• You’re going to need a platform.
• Decomposed data governance -> recomposed data
discovery.
• Thank You!
A NEW PLATFORM FOR A NEW ERA
Ad

More Related Content

What's hot (20)

PCF Architecture
PCF Architecture PCF Architecture
PCF Architecture
seungdon Choi
 
Architecture & Operations
Architecture & OperationsArchitecture & Operations
Architecture & Operations
VMware Tanzu
 
Cloud native Microservices using Spring Boot
Cloud native Microservices using Spring BootCloud native Microservices using Spring Boot
Cloud native Microservices using Spring Boot
Sufyaan Kazi
 
Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...
Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...
Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...
cornelia davis
 
Pivotal CF 소개
Pivotal CF 소개 Pivotal CF 소개
Pivotal CF 소개
seungdon Choi
 
Pivotal Power Lunch - Why Cloud Native?
Pivotal Power Lunch - Why Cloud Native?Pivotal Power Lunch - Why Cloud Native?
Pivotal Power Lunch - Why Cloud Native?
Sufyaan Kazi
 
IBM and OpenStack: Collaboration Beyond the Code
IBM and OpenStack: Collaboration Beyond the CodeIBM and OpenStack: Collaboration Beyond the Code
IBM and OpenStack: Collaboration Beyond the Code
Daniel Krook
 
Pivotal microservices spring_pcf_skillsmatter.pptx
Pivotal microservices spring_pcf_skillsmatter.pptxPivotal microservices spring_pcf_skillsmatter.pptx
Pivotal microservices spring_pcf_skillsmatter.pptx
Sufyaan Kazi
 
A year with Cloud Foundry and BOSH
A year with Cloud Foundry and BOSHA year with Cloud Foundry and BOSH
A year with Cloud Foundry and BOSH
Troy Astle
 
Cloud Native Architectures for Devops
Cloud Native Architectures for DevopsCloud Native Architectures for Devops
Cloud Native Architectures for Devops
cornelia davis
 
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Chris Haddad
 
How to Architect and Develop Cloud Native Applications
How to Architect and Develop Cloud Native ApplicationsHow to Architect and Develop Cloud Native Applications
How to Architect and Develop Cloud Native Applications
Sufyaan Kazi
 
Pivotal spring boot-cloud workshop
Pivotal   spring boot-cloud workshopPivotal   spring boot-cloud workshop
Pivotal spring boot-cloud workshop
Sufyaan Kazi
 
HP Helion Webinar #4 - Open stack the magic pill
HP Helion Webinar #4 - Open stack the magic pillHP Helion Webinar #4 - Open stack the magic pill
HP Helion Webinar #4 - Open stack the magic pill
BeMyApp
 
Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)
Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)
Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)
VMware Tanzu
 
HP Helion European Webinar Series ,Webinar #3
HP Helion European Webinar Series ,Webinar #3 HP Helion European Webinar Series ,Webinar #3
HP Helion European Webinar Series ,Webinar #3
BeMyApp
 
Linux Collaboration Summit Keynote: Transformation: It Takes a Platform
Linux Collaboration Summit Keynote: Transformation: It Takes a PlatformLinux Collaboration Summit Keynote: Transformation: It Takes a Platform
Linux Collaboration Summit Keynote: Transformation: It Takes a Platform
cornelia davis
 
Forecast 2014: EMC Corp - Build a hybrid cloud
Forecast 2014: EMC Corp - Build a hybrid cloudForecast 2014: EMC Corp - Build a hybrid cloud
Forecast 2014: EMC Corp - Build a hybrid cloud
Open Data Center Alliance
 
The Cloud Foundry Story
The Cloud Foundry StoryThe Cloud Foundry Story
The Cloud Foundry Story
VMware Tanzu
 
Intel Cloud Foundry and OpenStack
Intel Cloud Foundry and OpenStackIntel Cloud Foundry and OpenStack
Intel Cloud Foundry and OpenStack
Silicon Valley Cloud Foundry Meetup
 
Architecture & Operations
Architecture & OperationsArchitecture & Operations
Architecture & Operations
VMware Tanzu
 
Cloud native Microservices using Spring Boot
Cloud native Microservices using Spring BootCloud native Microservices using Spring Boot
Cloud native Microservices using Spring Boot
Sufyaan Kazi
 
Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...
Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...
Devops Enterprise Summit: My Great Awakening: 
Top “Ah-ha” Moments As Former ...
cornelia davis
 
Pivotal Power Lunch - Why Cloud Native?
Pivotal Power Lunch - Why Cloud Native?Pivotal Power Lunch - Why Cloud Native?
Pivotal Power Lunch - Why Cloud Native?
Sufyaan Kazi
 
IBM and OpenStack: Collaboration Beyond the Code
IBM and OpenStack: Collaboration Beyond the CodeIBM and OpenStack: Collaboration Beyond the Code
IBM and OpenStack: Collaboration Beyond the Code
Daniel Krook
 
Pivotal microservices spring_pcf_skillsmatter.pptx
Pivotal microservices spring_pcf_skillsmatter.pptxPivotal microservices spring_pcf_skillsmatter.pptx
Pivotal microservices spring_pcf_skillsmatter.pptx
Sufyaan Kazi
 
A year with Cloud Foundry and BOSH
A year with Cloud Foundry and BOSHA year with Cloud Foundry and BOSH
A year with Cloud Foundry and BOSH
Troy Astle
 
Cloud Native Architectures for Devops
Cloud Native Architectures for DevopsCloud Native Architectures for Devops
Cloud Native Architectures for Devops
cornelia davis
 
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Chris Haddad
 
How to Architect and Develop Cloud Native Applications
How to Architect and Develop Cloud Native ApplicationsHow to Architect and Develop Cloud Native Applications
How to Architect and Develop Cloud Native Applications
Sufyaan Kazi
 
Pivotal spring boot-cloud workshop
Pivotal   spring boot-cloud workshopPivotal   spring boot-cloud workshop
Pivotal spring boot-cloud workshop
Sufyaan Kazi
 
HP Helion Webinar #4 - Open stack the magic pill
HP Helion Webinar #4 - Open stack the magic pillHP Helion Webinar #4 - Open stack the magic pill
HP Helion Webinar #4 - Open stack the magic pill
BeMyApp
 
Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)
Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)
Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)
VMware Tanzu
 
HP Helion European Webinar Series ,Webinar #3
HP Helion European Webinar Series ,Webinar #3 HP Helion European Webinar Series ,Webinar #3
HP Helion European Webinar Series ,Webinar #3
BeMyApp
 
Linux Collaboration Summit Keynote: Transformation: It Takes a Platform
Linux Collaboration Summit Keynote: Transformation: It Takes a PlatformLinux Collaboration Summit Keynote: Transformation: It Takes a Platform
Linux Collaboration Summit Keynote: Transformation: It Takes a Platform
cornelia davis
 
Forecast 2014: EMC Corp - Build a hybrid cloud
Forecast 2014: EMC Corp - Build a hybrid cloudForecast 2014: EMC Corp - Build a hybrid cloud
Forecast 2014: EMC Corp - Build a hybrid cloud
Open Data Center Alliance
 
The Cloud Foundry Story
The Cloud Foundry StoryThe Cloud Foundry Story
The Cloud Foundry Story
VMware Tanzu
 

Viewers also liked (17)

Nursing home cook performance appraisal
Nursing home cook performance appraisalNursing home cook performance appraisal
Nursing home cook performance appraisal
hayesamelia80
 
12. Горад у ІХ - сярэдзіне ХІІІ ст. Прыняцце хрысціянства
12. Горад у ІХ - сярэдзіне ХІІІ ст. Прыняцце хрысціянства12. Горад у ІХ - сярэдзіне ХІІІ ст. Прыняцце хрысціянства
12. Горад у ІХ - сярэдзіне ХІІІ ст. Прыняцце хрысціянства
AnastasiyaF
 
شروط التقديم
شروط التقديمشروط التقديم
شروط التقديم
Nour Elbader
 
PortfolioDrBarbaraCox
PortfolioDrBarbaraCoxPortfolioDrBarbaraCox
PortfolioDrBarbaraCox
Barbara Cox
 
State life
State lifeState life
State life
shahzaib raza hassan raza
 
Flipkart
FlipkartFlipkart
Flipkart
poojavora02
 
mega holdings new presentation
mega holdings new presentation  mega holdings new presentation
mega holdings new presentation
Mohammed Ammar
 
Suhu tubuh
Suhu tubuhSuhu tubuh
Suhu tubuh
siska18_syarifah
 
Вместе с мамой. Что делать, когда твой ребенок в реанимации
Вместе с мамой. Что делать, когда твой ребенок в реанимацииВместе с мамой. Что делать, когда твой ребенок в реанимации
Вместе с мамой. Что делать, когда твой ребенок в реанимации
Фонд Вера
 
SOFTWARE RESUME recent UPDATE
SOFTWARE RESUME recent UPDATESOFTWARE RESUME recent UPDATE
SOFTWARE RESUME recent UPDATE
Adebayo Damilola
 
閱讀報告6226
閱讀報告6226閱讀報告6226
閱讀報告6226
晴 宇
 
Copy of عامة
Copy of عامةCopy of عامة
Copy of عامة
Nour Elbader
 
QQML slides
QQML slidesQQML slides
QQML slides
Libdesign
 
IELTS Speaking Part2
IELTS Speaking Part2IELTS Speaking Part2
IELTS Speaking Part2
sleepysnowbird
 
Undang-Undang nomor 31 tahun 1999
Undang-Undang nomor 31 tahun 1999Undang-Undang nomor 31 tahun 1999
Undang-Undang nomor 31 tahun 1999
Muhammad Sirajuddin
 
RN_ASA_ Storyboard
RN_ASA_ StoryboardRN_ASA_ Storyboard
RN_ASA_ Storyboard
Becky Sheely
 
Nursing home cook performance appraisal
Nursing home cook performance appraisalNursing home cook performance appraisal
Nursing home cook performance appraisal
hayesamelia80
 
12. Горад у ІХ - сярэдзіне ХІІІ ст. Прыняцце хрысціянства
12. Горад у ІХ - сярэдзіне ХІІІ ст. Прыняцце хрысціянства12. Горад у ІХ - сярэдзіне ХІІІ ст. Прыняцце хрысціянства
12. Горад у ІХ - сярэдзіне ХІІІ ст. Прыняцце хрысціянства
AnastasiyaF
 
شروط التقديم
شروط التقديمشروط التقديم
شروط التقديم
Nour Elbader
 
PortfolioDrBarbaraCox
PortfolioDrBarbaraCoxPortfolioDrBarbaraCox
PortfolioDrBarbaraCox
Barbara Cox
 
mega holdings new presentation
mega holdings new presentation  mega holdings new presentation
mega holdings new presentation
Mohammed Ammar
 
Вместе с мамой. Что делать, когда твой ребенок в реанимации
Вместе с мамой. Что делать, когда твой ребенок в реанимацииВместе с мамой. Что делать, когда твой ребенок в реанимации
Вместе с мамой. Что делать, когда твой ребенок в реанимации
Фонд Вера
 
SOFTWARE RESUME recent UPDATE
SOFTWARE RESUME recent UPDATESOFTWARE RESUME recent UPDATE
SOFTWARE RESUME recent UPDATE
Adebayo Damilola
 
閱讀報告6226
閱讀報告6226閱讀報告6226
閱讀報告6226
晴 宇
 
Undang-Undang nomor 31 tahun 1999
Undang-Undang nomor 31 tahun 1999Undang-Undang nomor 31 tahun 1999
Undang-Undang nomor 31 tahun 1999
Muhammad Sirajuddin
 
RN_ASA_ Storyboard
RN_ASA_ StoryboardRN_ASA_ Storyboard
RN_ASA_ Storyboard
Becky Sheely
 
Ad

Similar to To Microservices and Beyond (20)

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
VMware Tanzu
 
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
Matt Stine
 
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
VMware Tanzu
 
Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209
minseok kim
 
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
VMware Tanzu
 
Development on Cloud,PaaS and SDDC
Development on Cloud,PaaS and SDDCDevelopment on Cloud,PaaS and SDDC
Development on Cloud,PaaS and SDDC
seungdon Choi
 
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
OpenStack Korea Community
 
Developing Oracle Fusion Middleware Applications in the Cloud
Developing Oracle Fusion Middleware Applications in the CloudDeveloping Oracle Fusion Middleware Applications in the Cloud
Developing Oracle Fusion Middleware Applications in the Cloud
Matt Wright
 
Concevoir et déployer vos applications a base de microservices sur Cloud Foundry
Concevoir et déployer vos applications a base de microservices sur Cloud FoundryConcevoir et déployer vos applications a base de microservices sur Cloud Foundry
Concevoir et déployer vos applications a base de microservices sur Cloud Foundry
VMware Tanzu
 
The Fantastic Voyage to PaaS - Are we there yet? (Cloud Foundry Summit 2014)
The Fantastic Voyage to PaaS - Are we there yet? (Cloud Foundry Summit 2014)The Fantastic Voyage to PaaS - Are we there yet? (Cloud Foundry Summit 2014)
The Fantastic Voyage to PaaS - Are we there yet? (Cloud Foundry Summit 2014)
VMware Tanzu
 
A proven path for migrating from clearcase to git and or subversion
A proven path for migrating from clearcase to git and or subversionA proven path for migrating from clearcase to git and or subversion
A proven path for migrating from clearcase to git and or subversion
CollabNet
 
What's new in Pivotal Cloud Foundry 1.6
What's new in Pivotal Cloud Foundry 1.6What's new in Pivotal Cloud Foundry 1.6
What's new in Pivotal Cloud Foundry 1.6
dektlong
 
Cloud Foundry Vancouver Meetup July 2016
Cloud Foundry Vancouver Meetup July 2016Cloud Foundry Vancouver Meetup July 2016
Cloud Foundry Vancouver Meetup July 2016
Stuart Charlton
 
Supercharge Your Application Delivery: The Journey to Enterprise PaaS
Supercharge Your Application Delivery: The Journey to Enterprise PaaSSupercharge Your Application Delivery: The Journey to Enterprise PaaS
Supercharge Your Application Delivery: The Journey to Enterprise PaaS
Al Sargent
 
The New Possible: How Platform-as-a-Service Changes the Game
 The New Possible: How Platform-as-a-Service Changes the Game The New Possible: How Platform-as-a-Service Changes the Game
The New Possible: How Platform-as-a-Service Changes the Game
Inside Analysis
 
Supercharge Your Application Delivery
Supercharge Your Application DeliverySupercharge Your Application Delivery
Supercharge Your Application Delivery
VMware Tanzu
 
Made for Each Other: Microservices + PaaS
Made for Each Other: Microservices + PaaSMade for Each Other: Microservices + PaaS
Made for Each Other: Microservices + PaaS
VMware Tanzu
 
Cloud native pitch-younjin-20150925-v2
Cloud native pitch-younjin-20150925-v2Cloud native pitch-younjin-20150925-v2
Cloud native pitch-younjin-20150925-v2
Younjin Jeong
 
Cloud Foundry Technical Overview at IBM Interconnect 2016
Cloud Foundry Technical Overview at IBM Interconnect 2016Cloud Foundry Technical Overview at IBM Interconnect 2016
Cloud Foundry Technical Overview at IBM Interconnect 2016
Stormy Peters
 
Cloud Foundry - An Open Innovation Platform
Cloud Foundry - An Open Innovation PlatformCloud Foundry - An Open Innovation Platform
Cloud Foundry - An Open Innovation Platform
All Things Open
 
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
VMware Tanzu
 
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
Matt Stine
 
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
VMware Tanzu
 
Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209Pivotal cf for_devops_mkim_20141209
Pivotal cf for_devops_mkim_20141209
minseok kim
 
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
Part 2: Architecture and the Operator Experience (Pivotal Cloud Platform Road...
VMware Tanzu
 
Development on Cloud,PaaS and SDDC
Development on Cloud,PaaS and SDDCDevelopment on Cloud,PaaS and SDDC
Development on Cloud,PaaS and SDDC
seungdon Choi
 
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
OpenStack Korea Community
 
Developing Oracle Fusion Middleware Applications in the Cloud
Developing Oracle Fusion Middleware Applications in the CloudDeveloping Oracle Fusion Middleware Applications in the Cloud
Developing Oracle Fusion Middleware Applications in the Cloud
Matt Wright
 
Concevoir et déployer vos applications a base de microservices sur Cloud Foundry
Concevoir et déployer vos applications a base de microservices sur Cloud FoundryConcevoir et déployer vos applications a base de microservices sur Cloud Foundry
Concevoir et déployer vos applications a base de microservices sur Cloud Foundry
VMware Tanzu
 
The Fantastic Voyage to PaaS - Are we there yet? (Cloud Foundry Summit 2014)
The Fantastic Voyage to PaaS - Are we there yet? (Cloud Foundry Summit 2014)The Fantastic Voyage to PaaS - Are we there yet? (Cloud Foundry Summit 2014)
The Fantastic Voyage to PaaS - Are we there yet? (Cloud Foundry Summit 2014)
VMware Tanzu
 
A proven path for migrating from clearcase to git and or subversion
A proven path for migrating from clearcase to git and or subversionA proven path for migrating from clearcase to git and or subversion
A proven path for migrating from clearcase to git and or subversion
CollabNet
 
What's new in Pivotal Cloud Foundry 1.6
What's new in Pivotal Cloud Foundry 1.6What's new in Pivotal Cloud Foundry 1.6
What's new in Pivotal Cloud Foundry 1.6
dektlong
 
Cloud Foundry Vancouver Meetup July 2016
Cloud Foundry Vancouver Meetup July 2016Cloud Foundry Vancouver Meetup July 2016
Cloud Foundry Vancouver Meetup July 2016
Stuart Charlton
 
Supercharge Your Application Delivery: The Journey to Enterprise PaaS
Supercharge Your Application Delivery: The Journey to Enterprise PaaSSupercharge Your Application Delivery: The Journey to Enterprise PaaS
Supercharge Your Application Delivery: The Journey to Enterprise PaaS
Al Sargent
 
The New Possible: How Platform-as-a-Service Changes the Game
 The New Possible: How Platform-as-a-Service Changes the Game The New Possible: How Platform-as-a-Service Changes the Game
The New Possible: How Platform-as-a-Service Changes the Game
Inside Analysis
 
Supercharge Your Application Delivery
Supercharge Your Application DeliverySupercharge Your Application Delivery
Supercharge Your Application Delivery
VMware Tanzu
 
Made for Each Other: Microservices + PaaS
Made for Each Other: Microservices + PaaSMade for Each Other: Microservices + PaaS
Made for Each Other: Microservices + PaaS
VMware Tanzu
 
Cloud native pitch-younjin-20150925-v2
Cloud native pitch-younjin-20150925-v2Cloud native pitch-younjin-20150925-v2
Cloud native pitch-younjin-20150925-v2
Younjin Jeong
 
Cloud Foundry Technical Overview at IBM Interconnect 2016
Cloud Foundry Technical Overview at IBM Interconnect 2016Cloud Foundry Technical Overview at IBM Interconnect 2016
Cloud Foundry Technical Overview at IBM Interconnect 2016
Stormy Peters
 
Cloud Foundry - An Open Innovation Platform
Cloud Foundry - An Open Innovation PlatformCloud Foundry - An Open Innovation Platform
Cloud Foundry - An Open Innovation Platform
All Things Open
 
Ad

Recently uploaded (20)

Maxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINKMaxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINK
younisnoman75
 
Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]
saniaaftab72555
 
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& ConsiderationsDesigning AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Dinusha Kumarasiri
 
Download YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full ActivatedDownload YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full Activated
saniamalik72555
 
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdfMicrosoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
TechSoup
 
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Lionel Briand
 
Expand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchangeExpand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchange
Fexle Services Pvt. Ltd.
 
Not So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java WebinarNot So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java Webinar
Tier1 app
 
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Orangescrum
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
Societal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainabilitySocietal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainability
Jordi Cabot
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025
mu394968
 
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
Egor Kaleynik
 
Download Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With LatestDownload Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With Latest
tahirabibi60507
 
Douwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License codeDouwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License code
aneelaramzan63
 
Meet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Meet the Agents: How AI Is Learning to Think, Plan, and CollaborateMeet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Meet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Maxim Salnikov
 
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
AxisTechnolabs
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Maxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINKMaxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINK
younisnoman75
 
Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]
saniaaftab72555
 
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& ConsiderationsDesigning AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Dinusha Kumarasiri
 
Download YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full ActivatedDownload YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full Activated
saniamalik72555
 
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdfMicrosoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
TechSoup
 
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Lionel Briand
 
Expand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchangeExpand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchange
Fexle Services Pvt. Ltd.
 
Not So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java WebinarNot So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java Webinar
Tier1 app
 
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Orangescrum
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
Societal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainabilitySocietal challenges of AI: biases, multilinguism and sustainability
Societal challenges of AI: biases, multilinguism and sustainability
Jordi Cabot
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025
mu394968
 
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
Egor Kaleynik
 
Download Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With LatestDownload Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With Latest
tahirabibi60507
 
Douwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License codeDouwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License code
aneelaramzan63
 
Meet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Meet the Agents: How AI Is Learning to Think, Plan, and CollaborateMeet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Meet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Maxim Salnikov
 
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
AxisTechnolabs
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 

To Microservices and Beyond

  • 1. © Copyright 2014 Pivotal. All rights reserved.© Copyright 2014 Pivotal. All rights reserved. To Microservices and Beyond! 1 Simon Elisha (@simon_elisha) - CTO & Director of Field Engineering
  • 2. © Copyright 2014 Pivotal. All rights reserved. 2 IT SEEMS THERE’S SOME HYPE… M!CR0S3RV!C3$!!!!!
  • 3. © Copyright 2014 Pivotal. All rights reserved. DEFINE: Microservice 3 Loosely coupled service oriented architecture with bounded contexts If every service has to be updated in concert, it’s not loosely coupled! If you have to know about surrounding services you don’t have a bounded context.
  • 4. © Copyright 2014 Pivotal. All rights reserved. 4 Not Traditional (ESB-centric) SOA Enterprise Service Bus Service Service Service Service Service Service Service Service UI UI
  • 5. © Copyright 2014 Pivotal. All rights reserved. 5 But Microservices!
  • 6. © Copyright 2014 Pivotal. All rights reserved. 6 But why?
  • 7. © Copyright 2014 Pivotal. All rights reserved. 7 Issues We’ll Confront • Microservices are not an inherently superior architecture. • We’re still building big systems from smaller things. • Just like Docker won’t save the world, neither will microservices. They’re not free. • You absolutely cannot forget about data. • Let’s begin!
  • 8. © Copyright 2014 Pivotal. All rights reserved. 8 Not an end in themselves… It’s about Continuous Delivery!
  • 9. © Copyright 2014 Pivotal. All rights reserved. What is Continuous Delivery? 9 $ Business DevelopmentQA Operations Customer
  • 10. © Copyright 2014 Pivotal. All rights reserved. What is Continuous Delivery? 10 $
  • 11. © Copyright 2014 Pivotal. All rights reserved. 11 Keep the Wheel Spinning! Design Develop Test Customer Feedback Customer Delivery Analytics
  • 12. © Copyright 2014 Pivotal. All rights reserved. 12 Prod Release #1 Prod Release #2 Prod Release #3 AgileDevelopm ent Waterfall Organization!
  • 13. © Copyright 2014 Pivotal. All rights reserved. Silo Delivery 13 Project Mgmt UX Dev QA DBA Sys Admin Net Admin Storage Admin Adapted from: http://www.slideshare.net/adriancockcroft/goto-berlin MONOLITHIC DELIVERY
  • 14. © Copyright 2014 Pivotal. All rights reserved. Continuous Delivery 14 Product Mgr UX Dev QA DBA Sys Admin Net Admin Storage Admin BUSINESS CAPABILITY TEAMS USING MICROSERVICES PLATFORM OPERATIONS TEAM Adapted from: http://www.slideshare.net/adriancockcroft/goto-berlin
  • 15. © Copyright 2014 Pivotal. All rights reserved. Continuous Delivery 15 Product Mgr UX Dev QA DBA Sys Admin Net Admin Storage Admin BUSINESS CAPABILITY TEAMS USING MICROSERVICES PLATFORM OPERATIONS TEAM Adapted from: http://www.slideshare.net/adriancockcroft/goto-berlin Self Service API
  • 16. © Copyright 2014 Pivotal. All rights reserved. 16 INVENTORY Prod Release Prod Release Prod Release CATALOG Prod Release Prod Release Prod Release REVIEWS Prod Release Prod Release Prod Release SHIPPING Prod Release Prod Release Prod Release
  • 17. © Copyright 2014 Pivotal. All rights reserved. 17 Microservices Enabling Continuous Delivery • Decoupling Capabilities -> Decoupling Change Cycles • Product Ownership: Tip to Tail • We Build and Operate What We Understand BEST • We Collaborate via API Contracts • Microservice to Microservice • Microservice to Platform
  • 18. © Copyright 2014 Pivotal. All rights reserved. 18 Systems over Services Composition over Components
  • 19. © Copyright 2014 Pivotal. All rights reserved. Microframeworks for Microservices 19 Spring Boot http://projects.spring.io/spring-boot Dropwizard http://dropwizard.io
  • 20. © Copyright 2014 Pivotal. All rights reserved. It can get pretty small… 20 @RestController class ThisWillActuallyRun { @RequestMapping("/") String home() { Hello World! } }
  • 21. © Copyright 2014 Pivotal. All rights reserved. With Spring Data REST! 21 http://projects.spring.io/spring-data-rest @Entity @Table(name = "city") public class City implements Serializable { @Id @GeneratedValue private Long id; @Column(nullable = false) private String name; @Column(nullable = false) private String county; //... }
  • 22. © Copyright 2014 Pivotal. All rights reserved. With Spring Data REST! 22 http://projects.spring.io/spring-data-rest @RepositoryRestResource(collectionResourceRel = "cities", path = "cities") public interface CityRepository extends PagingAndSortingRepository<City, Long> {} @Configuration @ComponentScan @EnableAutoConfiguration @EnableJpaRepositories @Import(RepositoryRestMvcConfiguration.class) public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
  • 23. © Copyright 2014 Pivotal. All rights reserved. With Spring Data REST! 23 http://projects.spring.io/spring-data-rest { "_links" : { "next" : { "href" : "http://localhost:8080/cities?page=1&size=20" }, "self" : { "href" : "http://localhost:8080/cities{?page,size,sort}", "templated" : true } }, "_embedded" : { "cities" : [ { "name" : "HOLTSVILLE", "county" : "SUFFOLK", "stateCode" : "NY", "postalCode" : "00501", "latitude" : "+40.922326", "longitude" : "-072.637078",
  • 24. © Copyright 2014 Pivotal. All rights reserved. But No Microservice is an Island… 24
  • 25. © Copyright 2014 Pivotal. All rights reserved. Example Distributed System: Minified 25
  • 26. © Copyright 2014 Pivotal. All rights reserved. 26 Some emergent features of microservices systems… • Distributed/Versioned Configuration • Service Registration/Discovery • Routing/Load Balancing • Fault Tolerance (Circuit Breakers, Bulkheads, …)
  • 27. © Copyright 2014 Pivotal. All rights reserved. Example: Coordination Boiler Plate 27
  • 28. © Copyright 2014 Pivotal. All rights reserved. 28 • Eureka • Hystrix + Turbine • Ribbon • Feign • Zuul • Archaius + http://netflix.github.io
  • 29. © Copyright 2014 Pivotal. All rights reserved. 29 http://projects.spring.io/spring-cloud
  • 30. © Copyright 2014 Pivotal. All rights reserved. Example: Spring Cloud + Netflix OSS 30
  • 31. © Copyright 2014 Pivotal. All rights reserved. 31 Operationalized Architecture You have to pay for your lunch!
  • 32. © Copyright 2014 Pivotal. All rights reserved.© Copyright 2014 Pivotal. All rights reserved. 32 http://highscalability.com/blog/2014/4/8/microservices-not-a-free-lunch.html
  • 33. © Copyright 2014 Pivotal. All rights reserved. 33 Paying for your lunch… • Significant Operations Overhead • Substantial DevOps Skills Required • Implicit Interfaces • Duplication of Effort • Distributed System Complexity • Asynchronicity is Difficult! • Testability Challenges
  • 34. © Copyright 2014 Pivotal. All rights reserved. You must be this tall to use Microservices… 34 http://martinfowler.com/bliki/MicroservicePrerequisites.html https://www.flickr.com/photos/gusset/3723961589 • RAPID PROVISIONING • BASIC MONITORING • RAPID APPLICATION DEPLOYMENT • DEVOPS CULTURE
  • 35. © Copyright 2014 Pivotal. All rights reserved. It takes a platform… 35 http://techblog.netflix.com/2013/01/optimizing-netflix-api.html http://techblog.netflix.com/2014/03/the-netflix-dynamic-scripting-platform.html
  • 36. © Copyright 2014 Pivotal. All rights reserved. It takes a platform… 36 Pivotal CF Spring Cloud
  • 37. © Copyright 2014 Pivotal. All rights reserved. 37 Platform Features • Environment Provisioning • On-Demand/Automatic Scaling • Failover/Resilience • Routing/Load Balancing • Data Service Operations • Monitoring
  • 38. © Copyright 2014 Pivotal. All rights reserved. Environment Provisioning/App Deployment 38 Router Cloud Controller Service Broker Node(s) DEA DEA DEA DEA Blobstore DB Runtime 1. Upload bits/metadata 2. Create/bind services 3. Stage via Buildpack 4. Deploy via Container push app + app MD SC + = http://docs.cloudfoundry.org/devguide/deploy-apps/
  • 39. © Copyright 2014 Pivotal. All rights reserved. Environment Provisioning/App Deployment 39 Router Cloud Controller DEA Blobstore DB Runtime Detect Compile Upload No System Buildpacks + = Yes http://docs.cloudfoundry.org/buildpacks/
  • 40. © Copyright 2014 Pivotal. All rights reserved. Deployment/Load Balancing/Scaling 40 Blobstore Router Cloud Controller DEA Messaging (NATS) DEA DEA Runtime Access App http://docs.cloudfoundry.org/concepts/architecture/warden.html Container Container
  • 41. © Copyright 2014 Pivotal. All rights reserved. Failover/Resilience 41 Blobstore Router Cloud Controller DEA Messaging (NATS) DEA DEA Runtime Health Manager Actual StateDesired State http://docs.cloudfoundry.org/concepts/architecture/#hm9k Container Container Container
  • 42. © Copyright 2014 Pivotal. All rights reserved. Data Service Operations: Cluster Provisioning 42 Blobstore BOSH Health Monitor DB Deploy my Services IaaS Worker VMsBOSH Director NATS Cassandra Node Target VM Cassandra Node Target VM Cassandra Node Target VM http://bosh.cloudfoundry.org/
  • 43. © Copyright 2014 Pivotal. All rights reserved. DB Router Data Service Operations: Application Binding 43 Service credentials reserve resources obtain connection data CLI Cloud Controller Service Broker Data Service Runtime create service (HTTP) bind service (HTTP) create service (HTTP) bind service (HTTP) http://docs.cloudfoundry.org/services/api.html
  • 44. © Copyright 2014 Pivotal. All rights reserved. Monitoring 44
  • 45. © Copyright 2014 Pivotal. All rights reserved. 45 It’s All About the Data What about the BIG QUESTIONS?
  • 46. © Copyright 2014 Pivotal. All rights reserved. This won’t work… 46
  • 47. © Copyright 2014 Pivotal. All rights reserved. 47 Instead!
  • 48. © Copyright 2014 Pivotal. All rights reserved. Bounded Contexts 48 Movie Movie Actor Genre Media Type Media Type Kiosk Location Media Product Catalog Inventory
  • 49. © Copyright 2014 Pivotal. All rights reserved. Polyglot Persistence 49 REST XYou shall not pass…
  • 50. © Copyright 2014 Pivotal. All rights reserved. But I have a question! 50 REST XYou shall not pass… ? ? ? ? ? ?
  • 51. © Copyright 2014 Pivotal. All rights reserved. Lambda Architecture 51
  • 52. © Copyright 2014 Pivotal. All rights reserved. Join via Events! 52
  • 53. © Copyright 2014 Pivotal. All rights reserved. 53 http://projects.spring.io/spring-xd/
  • 54. © Copyright 2014 Pivotal. All rights reserved. 54
  • 55. © Copyright 2014 Pivotal. All rights reserved. Redbox Conceptual Workflow 55
  • 56. © Copyright 2014 Pivotal. All rights reserved. SpringBox Microservices 56 Catalog Service Inventory Service Kiosk Kiosk Kiosk Reservation Service https://github.com/cf-platform-eng/springbox-datacloud
  • 57. © Copyright 2014 Pivotal. All rights reserved. …and if you have a question: 57 Kiosk Kiosk Kiosk Speed Layer Batch Layer Serving Layer Event Ingest https://github.com/cf-platform-eng/springbox-datacloud “What movie genres are most popular in what geographic locations?”
  • 58. © Copyright 2014 Pivotal. All rights reserved. “What movie genres are most popular in what geographic locations?” 58 // Aggregate preferences across all kiosks: stream create --name kiosk_agg_prefs --definition "rabbit -- queues=lambda.kiosk.events | field-value-counter --fieldName=genreIds" // Tap aggregate preferences, filter for kiosk #1: stream create --name kiosk_1_prefs --definition "tap:stream:kiosk_agg_prefs > filter --expression=#jsonPath(payload,'$.locationId').equals(1) | field-value-counter -- fieldName=genreIds"
  • 59. © Copyright 2014 Pivotal. All rights reserved. “What movie genres are most popular in what geographic locations?” 59 field-value-counter display --name kiosk_agg_prefs field-value-counter display=kiosk_agg_prefs ------------------------------------------- - ----- VALUE - COUNT Action | 14 Adventure | 6 Comedy | 27 Sci-Fi | 18
  • 60. © Copyright 2014 Pivotal. All rights reserved. 60 Where We’ve Been… • Microservices are an enabler to Continuous Delivery. • Less about services, more about composed distributed systems. Patterns can help. • You’re going to need a platform. • Decomposed data governance -> recomposed data discovery. • Thank You!
  • 61. A NEW PLATFORM FOR A NEW ERA