SlideShare a Scribd company logo
1 of 179
Download to read offline
PRACTICAL 
CONSIDERATIONS 
FOR MICRO SERVICES 
Sam Newman 
NDC London, December 2014 
1
14 PRACTICAL TIPS 
FOR MICROSERVICES 
Sam Newman 
NDC London, December 2014 
2
YOU WON’T BELIEVE 
WHAT THEY DO WITH 
MICROSERVICES IN 
THIS TALK! 
Sam Newman 
NDC London, December 2014 
3
SEE WHAT JENNIFER 
LAWRENCE THINKS 
ABOUT DISTRIBUTED 
SYSTEMS! 
Sam Newman 
NDC London, December 2014 
4
Customer 
Service 
Accounts 
Returns 
Invoicing 
Shipping 
Inventory 
#ndclondon @samnewman
Customer 
Service 
Small 
Accounts 
Returns 
Invoicing 
Shipping 
Inventory 
#ndclondon @samnewman
Customer 
Service 
Small 
Modelled Around Business Domain 
Accounts 
Returns 
Invoicing 
Shipping 
Inventory 
#ndclondon @samnewman
Customer 
Service 
Small 
Modelled Around Business Domain 
Accounts 
Returns 
Invoicing 
Shipping 
Inventory 
Autonomous 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
V1 
#ndclondon @samnewman
V2 
#ndclondon @samnewman
Go 
Java 
NodeJS 
Ruby 
#ndclondon @samnewman
Go 
NodeJS 
Ruby 
Clojure! 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
Where To Standardise? 
#ndclondon @samnewman
#©n d2cl0on1d3o nElectronic Arts Inc. @samnewman
#ndclondon @samnewman
Interfaces 
#ndclondon @samnewman
Interfaces 
Monitoring 
#ndclondon @samnewman
Interfaces 
Monitoring 
Deployment & Testing 
#ndclondon @samnewman
Architectural Safety 
#ndclondon @samnewman
#ndclondon @samnewman
Free For All 
#ndclondon @samnewman
Standardisation 
Free For All 
#ndclondon @samnewman
Standardisation 
TIP 1 / 14: Standardise in the gaps between services - 
be flexible about what happens inside the boxes 
Free For All 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman https://www.flickr.com/photos/garrymsmith/6108841070
Autonomy 
Communication 
#ndclondon @samnewman
Team Ownership 
#ndclondon @samnewman
Team Ownership 
??? 
#ndclondon @samnewman
Trusted Committer / 
Roving Custodian 
#ndclondon @samnewman
Trusted Committer / 
Roving Custodian 
??? 
#ndclondon @samnewman
Trusted Committer / 
Roving Custodian 
??? 
#ndclondon @samnewman
Trusted Committer / 
Roving Custodian 
??? 
#ndclondon @samnewman
Trusted Committer / 
Roving Custodian 
??? 
#ndclondon @samnewman
Trusted Committer / 
Roving Custodian 
??? 
#ndclondon @samnewman
Trusted Committer / 
Roving Custodian 
TIP 2 / 14: Have a cle?a?r ?custodian model! 
#ndclondon @samnewman
Interfaces 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
Coupling Is Bad 
#ndclondon @samnewman
Integration Styles 
An Evolutionary View 
Data Oriented Procedure 
Oriented 
Document 
Oriented 
Resource 
Oriented 
#ndclondon @samnewman
Integration Styles 
An Evolutionary View 
Data Oriented Procedure 
Oriented 
Document 
Oriented 
Resource 
Oriented 
#ndclondon @samnewman
Integration Styles 
An Evolutionary View 
TIP 3 / 14: Be careful of RPC-mechanisms/shared 
serialisation protocols to avoid coupling 
Data Oriented Procedure 
Oriented 
Document 
Oriented 
Resource 
Oriented 
#ndclondon @samnewman
Database 
#ndclondon @samnewman
Database 
#ndclondon @samnewman
Database 
#ndclondon @samnewman
Database 
#ndclondon @samnewman
Database 
#ndclondon @samnewman
Database 
#ndclondon @samnewman
Database 
#ndclondon @samnewman
Database Database 
#ndclondon @samnewman
Database Database 
#ndclondon @samnewman
TIP 4 / 14: Separate the databases before separating services 
Database Database 
#ndclondon @samnewman
The Customer Is Always Right 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
TIP 5 / 14: Adopt a consumer first approach 
#ndclondon @samnewman
Monitoring 
#ndclondon @samnewman
#ndclondon @samnewman
http://www.flickr.com/photos/kalexanderson/5421517469/ 
#ndclondon @samnewman
http://www.flickr.com/photos/kalexanderson/5421517469/ 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
??? 
#ndclondon @samnewman
You have to get *much* 
better at monitoring 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
You are not a badass if you 
use an SSH Multiplexer 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
Response Time 
Response Time 
Response Time 
#ndclondon @samnewman
Response Time 
Response Time 
Response Time 
#ndclondon @samnewman
Response Time 
Response Time 
Response Time 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
TIP 6 / 14: Capture metrics, and logs, for each node, 
and aggregate them to get a rolled up picture 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
TIP 7 / 14: Use synthetic transactions to test 
production systems 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
ID: 123 
#ndclondon @samnewman
ID: 123 
ID: 123 
ID: 123 
#ndclondon @samnewman
ID: 123 
TIP 8 / 14: Use correlation IDs to track down nasty bugs 
ID: 123 
ID: 123 
#ndclondon @samnewman
Deployment 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
! 
#ndclondon @samnewman
! 
! 
#ndclondon @samnewman
! 
! 
! 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
TIP 9 / 14: Abstract out underlying platform 
differences to provide a uniform deployment 
mechanism 
#ndclondon @samnewman
Shipping 
Inventory 
Customer 
Service 
Accounts 
Returns 
Invoicing 
#ndclondon @samnewman
Customer 
Service 
Accounts 
Returns 
Invoicing 
Shipping 
Inventory 
#ndclondon @samnewman
Customer 
Service 
Accounts 
Returns 
Invoicing 
Shipping 
Inventory 
#ndclondon @samnewman
Inventory Accounts 
Mountebank 
http://www.mbtest.org 
#ndclondon @samnewman
Inventory 
Accounts 
Stub 
Mountebank 
http://www.mbtest.org 
#ndclondon @samnewman
Shipping 
Inventory 
Customer 
Service 
Accounts 
Returns 
Invoicing 
#ndclondon @samnewman
Shipping 
Inventory 
Customer 
Service 
Accounts 
Returns 
Invoicing 
#ndclondon @samnewman
Shipping 
Inventory 
Customer 
Service 
Accounts 
Returns 
Invoicing 
#ndclondon @samnewman
Shipping 
Inventory 
Customer 
Service 
Accounts 
Returns 
Invoicing 
#ndclondon @samnewman
Shipping 
Inventory 
Customer 
Service 
Accounts 
Returns 
Invoicing 
#ndclondon @samnewman
#ndclondon @samnewman
Browsers 
#ndclondon @samnewman
Timing 
Browsers 
#ndclondon @samnewman
Provisioning of Environments 
Timing 
Browsers 
#ndclondon @samnewman
Networks 
Provisioning of Environments 
Timing 
Browsers 
#ndclondon @samnewman
Deployment 
Networks 
Provisioning of Environments 
Timing 
Browsers 
#ndclondon @samnewman
Deployment 
Networks 
Provisioning of Environments 
Timing 
Browsers Diagnosis 
#ndclondon @samnewman
CONSUMER-DRIVEN CONTRACTS 
Shipping Inventory 
#ndclondon @samnewman
CONSUMER-DRIVEN CONTRACTS 
Shipping Inventory 
Expectations 
#ndclondon @samnewman
CONSUMER-DRIVEN CONTRACTS 
Shipping Inventory 
Expectations 
#ndclondon @samnewman
CONSUMER-DRIVEN CONTRACTS 
Shipping Inventory 
Expectations 
Prod 
#ndclondon @samnewman
CONSUMER-DRIVEN CONTRACTS 
Shipping Inventory 
Expectations 
Prod 
#ndclondon @samnewman
#ndclondon @samnewman
https://github.com/realestate-com-au/pact 
#ndclondon @samnewman
TIP 10 / 14: Consumer Driven Tests to catch breaking changes 
https://github.com/realestate-com-au/pact 
#ndclondon @samnewman
Pending… Prod
Pending… Prod
Pending… Prod
Pending… Prod
Pending… Prod
Pending… Prod 
TIP 11 / 14: Don’t let changes build up - release as 
soon as you can, and preferably one at a time!
Architectural Safety 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
http://www.flickr.com/photos/louish/5611657857/ 
#ndclondon @samnewman
Connection Pool 
#ndclondon @samnewman
Connection Pool 
#ndclondon @samnewman
Connection Pool 
#ndclondon @samnewman
Connection Pool 
#ndclondon @samnewman
Connection 
Pool 
Connection 
Pool 
#ndclondon @samnewman
Connection 
Pool 
Connection 
Pool 
#ndclondon @samnewman
Connection 
Pool 
Connection 
Pool 
#ndclondon @samnewman
Connection 
Pool 
Connection 
Pool 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
TIP 12 / 14: Use timeouts, circuit breakers and bulk-heads 
to avoid cascading failure 
#ndclondon @samnewman
Special Service Behaviour 
#ndclondon @samnewman
Integration 
Special Service Behaviour 
#ndclondon @samnewman
Integration 
Special Service Behaviour 
Downstream 
#ndclondon @samnewman
Integration 
Special Service Behaviour 
Downstream 
Metrics 
#ndclondon @samnewman
Integration 
Special Service Behaviour 
Downstream 
Metrics 
#ndclondon @samnewman
Integration 
Special Service Behaviour 
Downstream 
Metrics 
#ndclondon @samnewman
Integration 
Special Service Behaviour 
Metrics TIP 13 / 14: Consider Service Templates to make it 
easy to do the right thing! 
Downstream 
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
#ndclondon @samnewman
Choice 
Opportunity 
#ndclondon @samnewman
Choice 
Opportunity 
Complexity 
#ndclondon @samnewman
Choice 
Opportunity 
Monitoring Complexity 
Deployment 
Safety 
Integration 
#ndclondon @samnewman
Choice 
Opportunity 
TIP 14 / 14: Find your own balance 
Monitoring Complexity 
Deployment 
Safety 
Integration 
#ndclondon @samnewman
62 
Building 
Microservices 
DESIGNING FINE-GRAINED SYSTEMS 
Sam Newman
Designing For 
Rapid Release 
500 West Madison 
500 West Madison 
#ndclondon @samnewman
500 West Madison 
500 West Madison 
From Macro To Micro 
Designing For 
Rapid Release 
#ndclondon @samnewman
500 West Madison 
500 West Madison 
From Macro To Micro 
Designing For 
Rapid Release 
http://lanyrd.com/profile/samnewman/ 
#ndclondon @samnewman
THANKS! 
Any questions: 
@samnewman 
snewman@thoughtworks.com

More Related Content

What's hot

Principles of Microservices - NDC 2014
Principles of Microservices  - NDC 2014Principles of Microservices  - NDC 2014
Principles of Microservices - NDC 2014Sam Newman
 
From macro to micro goto
From macro to micro   gotoFrom macro to micro   goto
From macro to micro gotoSam Newman
 
Confusion In The Land Of The Serverless
Confusion In The Land Of The ServerlessConfusion In The Land Of The Serverless
Confusion In The Land Of The ServerlessSam Newman
 
Confusion In The Land Of The Serverless - 90min Version
Confusion In The Land Of The Serverless - 90min VersionConfusion In The Land Of The Serverless - 90min Version
Confusion In The Land Of The Serverless - 90min VersionSam Newman
 
Testing & deploying Microservices GeeCon 2014
Testing & deploying Microservices   GeeCon 2014Testing & deploying Microservices   GeeCon 2014
Testing & deploying Microservices GeeCon 2014Sam Newman
 
BETA - Securing microservices
BETA - Securing microservicesBETA - Securing microservices
BETA - Securing microservicesSam Newman
 
Hiding The Lead: Coupling, cohesion and microservices
Hiding The Lead: Coupling, cohesion and microservicesHiding The Lead: Coupling, cohesion and microservices
Hiding The Lead: Coupling, cohesion and microservicesSam Newman
 
What Is This Cloud Native Thing Anyway?
What Is This Cloud Native Thing Anyway?What Is This Cloud Native Thing Anyway?
What Is This Cloud Native Thing Anyway?Sam Newman
 
AppSec and Microservices
AppSec and MicroservicesAppSec and Microservices
AppSec and MicroservicesSam Newman
 
Ramp up your Mobile Content Slideshow
Ramp up your Mobile Content SlideshowRamp up your Mobile Content Slideshow
Ramp up your Mobile Content SlideshowDan Lapham
 
THE UX OF DATA - VISUALIZATION RESPONSIVE
THE UX OF DATA - VISUALIZATION RESPONSIVETHE UX OF DATA - VISUALIZATION RESPONSIVE
THE UX OF DATA - VISUALIZATION RESPONSIVEPeter Rozek
 
2012: Putting your robots to work: security automation at Twitter
2012: Putting your robots to work: security automation at Twitter2012: Putting your robots to work: security automation at Twitter
2012: Putting your robots to work: security automation at TwitterNeil Matatall
 
Google Tag Manager Crash Course | MnSummit
Google Tag Manager Crash Course | MnSummitGoogle Tag Manager Crash Course | MnSummit
Google Tag Manager Crash Course | MnSummitMike Arnesen
 
The UX of DATA: Responsive Datenvisualisierung mit jQuery
The UX of DATA: Responsive Datenvisualisierung mit jQueryThe UX of DATA: Responsive Datenvisualisierung mit jQuery
The UX of DATA: Responsive Datenvisualisierung mit jQueryPeter Rozek
 
Performance and UX
Performance and UXPerformance and UX
Performance and UXPeter Rozek
 
SEO for Angular - BrightonSEO 2018
SEO for Angular - BrightonSEO 2018SEO for Angular - BrightonSEO 2018
SEO for Angular - BrightonSEO 2018Jamie Indigo
 
Automate, Create Tools, & Test Ideas Quickly with Google Apps Script
Automate, Create Tools, & Test Ideas Quickly with Google Apps ScriptAutomate, Create Tools, & Test Ideas Quickly with Google Apps Script
Automate, Create Tools, & Test Ideas Quickly with Google Apps ScriptCatalyst
 
Can Google properly crawl and index JavaScript? SEO Experiments - Results and...
Can Google properly crawl and index JavaScript? SEO Experiments - Results and...Can Google properly crawl and index JavaScript? SEO Experiments - Results and...
Can Google properly crawl and index JavaScript? SEO Experiments - Results and...Onely
 
HOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHOD
HOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHODHOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHOD
HOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHODChristoph C. Cemper
 

What's hot (20)

Principles of Microservices - NDC 2014
Principles of Microservices  - NDC 2014Principles of Microservices  - NDC 2014
Principles of Microservices - NDC 2014
 
From macro to micro goto
From macro to micro   gotoFrom macro to micro   goto
From macro to micro goto
 
It's a trap!
It's a trap!It's a trap!
It's a trap!
 
Confusion In The Land Of The Serverless
Confusion In The Land Of The ServerlessConfusion In The Land Of The Serverless
Confusion In The Land Of The Serverless
 
Confusion In The Land Of The Serverless - 90min Version
Confusion In The Land Of The Serverless - 90min VersionConfusion In The Land Of The Serverless - 90min Version
Confusion In The Land Of The Serverless - 90min Version
 
Testing & deploying Microservices GeeCon 2014
Testing & deploying Microservices   GeeCon 2014Testing & deploying Microservices   GeeCon 2014
Testing & deploying Microservices GeeCon 2014
 
BETA - Securing microservices
BETA - Securing microservicesBETA - Securing microservices
BETA - Securing microservices
 
Hiding The Lead: Coupling, cohesion and microservices
Hiding The Lead: Coupling, cohesion and microservicesHiding The Lead: Coupling, cohesion and microservices
Hiding The Lead: Coupling, cohesion and microservices
 
What Is This Cloud Native Thing Anyway?
What Is This Cloud Native Thing Anyway?What Is This Cloud Native Thing Anyway?
What Is This Cloud Native Thing Anyway?
 
AppSec and Microservices
AppSec and MicroservicesAppSec and Microservices
AppSec and Microservices
 
Ramp up your Mobile Content Slideshow
Ramp up your Mobile Content SlideshowRamp up your Mobile Content Slideshow
Ramp up your Mobile Content Slideshow
 
THE UX OF DATA - VISUALIZATION RESPONSIVE
THE UX OF DATA - VISUALIZATION RESPONSIVETHE UX OF DATA - VISUALIZATION RESPONSIVE
THE UX OF DATA - VISUALIZATION RESPONSIVE
 
2012: Putting your robots to work: security automation at Twitter
2012: Putting your robots to work: security automation at Twitter2012: Putting your robots to work: security automation at Twitter
2012: Putting your robots to work: security automation at Twitter
 
Google Tag Manager Crash Course | MnSummit
Google Tag Manager Crash Course | MnSummitGoogle Tag Manager Crash Course | MnSummit
Google Tag Manager Crash Course | MnSummit
 
The UX of DATA: Responsive Datenvisualisierung mit jQuery
The UX of DATA: Responsive Datenvisualisierung mit jQueryThe UX of DATA: Responsive Datenvisualisierung mit jQuery
The UX of DATA: Responsive Datenvisualisierung mit jQuery
 
Performance and UX
Performance and UXPerformance and UX
Performance and UX
 
SEO for Angular - BrightonSEO 2018
SEO for Angular - BrightonSEO 2018SEO for Angular - BrightonSEO 2018
SEO for Angular - BrightonSEO 2018
 
Automate, Create Tools, & Test Ideas Quickly with Google Apps Script
Automate, Create Tools, & Test Ideas Quickly with Google Apps ScriptAutomate, Create Tools, & Test Ideas Quickly with Google Apps Script
Automate, Create Tools, & Test Ideas Quickly with Google Apps Script
 
Can Google properly crawl and index JavaScript? SEO Experiments - Results and...
Can Google properly crawl and index JavaScript? SEO Experiments - Results and...Can Google properly crawl and index JavaScript? SEO Experiments - Results and...
Can Google properly crawl and index JavaScript? SEO Experiments - Results and...
 
HOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHOD
HOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHODHOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHOD
HOW TO INCREASE YOUR TRAFFIC 5X WITH THIS ONE SEO METHOD
 

Viewers also liked

Custodian*24 Monitor Sales Presentation
Custodian*24 Monitor Sales PresentationCustodian*24 Monitor Sales Presentation
Custodian*24 Monitor Sales Presentationwebhostingguy
 
Mutual funds
Mutual fundsMutual funds
Mutual fundssanky58
 
Intro To Factoring
Intro To FactoringIntro To Factoring
Intro To FactoringChris Lehnes
 
3 Best Practices for eDiscovery Custodian Interviews
3 Best Practices for eDiscovery Custodian Interviews3 Best Practices for eDiscovery Custodian Interviews
3 Best Practices for eDiscovery Custodian InterviewsD4
 
Operating Systems As a Product
Operating Systems As a ProductOperating Systems As a Product
Operating Systems As a ProductHarshit Srivastava
 
Operating system
Operating systemOperating system
Operating systemyogitamore3
 
vidddu A small presentation on,
vidddu A small presentation on, vidddu A small presentation on,
vidddu A small presentation on, mostreturnvidu
 
Factoring Trinomials
Factoring TrinomialsFactoring Trinomials
Factoring TrinomialsDon Simmons
 
Factoring & forfaiting
Factoring & forfaitingFactoring & forfaiting
Factoring & forfaitingTanuj Poddar
 
Chapter 22_Insurance Companies and Pension Funds
Chapter 22_Insurance Companies and Pension FundsChapter 22_Insurance Companies and Pension Funds
Chapter 22_Insurance Companies and Pension FundsRusman Mukhlis
 
Factoring & Forfaiting
Factoring & ForfaitingFactoring & Forfaiting
Factoring & Forfaitingharshil19987
 
Factoring and Forfaiting
Factoring and ForfaitingFactoring and Forfaiting
Factoring and ForfaitingLakshman Singh
 
Financial intermediation
Financial intermediationFinancial intermediation
Financial intermediationKijuto JP
 

Viewers also liked (20)

Custodian*24 Monitor Sales Presentation
Custodian*24 Monitor Sales PresentationCustodian*24 Monitor Sales Presentation
Custodian*24 Monitor Sales Presentation
 
Mutual funds
Mutual fundsMutual funds
Mutual funds
 
Intro To Factoring
Intro To FactoringIntro To Factoring
Intro To Factoring
 
Factoring
FactoringFactoring
Factoring
 
3 Best Practices for eDiscovery Custodian Interviews
3 Best Practices for eDiscovery Custodian Interviews3 Best Practices for eDiscovery Custodian Interviews
3 Best Practices for eDiscovery Custodian Interviews
 
Mutual fund
Mutual fundMutual fund
Mutual fund
 
Operating Systems As a Product
Operating Systems As a ProductOperating Systems As a Product
Operating Systems As a Product
 
Operating system
Operating systemOperating system
Operating system
 
vidddu A small presentation on,
vidddu A small presentation on, vidddu A small presentation on,
vidddu A small presentation on,
 
Money 3.0
Money 3.0Money 3.0
Money 3.0
 
Factoring Trinomials
Factoring TrinomialsFactoring Trinomials
Factoring Trinomials
 
Financial intermederies
Financial intermederiesFinancial intermederies
Financial intermederies
 
Mutual fund ppt
Mutual fund pptMutual fund ppt
Mutual fund ppt
 
Factoring & forfaiting
Factoring & forfaitingFactoring & forfaiting
Factoring & forfaiting
 
Chapter 22_Insurance Companies and Pension Funds
Chapter 22_Insurance Companies and Pension FundsChapter 22_Insurance Companies and Pension Funds
Chapter 22_Insurance Companies and Pension Funds
 
Factoring services
Factoring servicesFactoring services
Factoring services
 
Factoring & Forfaiting
Factoring & ForfaitingFactoring & Forfaiting
Factoring & Forfaiting
 
Factoring and Forfaiting
Factoring and ForfaitingFactoring and Forfaiting
Factoring and Forfaiting
 
Wealth Management
Wealth Management Wealth Management
Wealth Management
 
Financial intermediation
Financial intermediationFinancial intermediation
Financial intermediation
 

Similar to Practical microservices - NDC 2014

Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum...
Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum...Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum...
Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum...HostedbyConfluent
 
INTERFACE by apidays - Microservices, APIs, and the Cost Of Change by Sam Newman
INTERFACE by apidays - Microservices, APIs, and the Cost Of Change by Sam NewmanINTERFACE by apidays - Microservices, APIs, and the Cost Of Change by Sam Newman
INTERFACE by apidays - Microservices, APIs, and the Cost Of Change by Sam Newmanapidays
 
Deploying & operating microservices
Deploying & operating microservicesDeploying & operating microservices
Deploying & operating microservicesThoughtworks
 
Truly Responsive Design Means Aligning to Business and User Goals
Truly Responsive Design Means Aligning to Business and User GoalsTruly Responsive Design Means Aligning to Business and User Goals
Truly Responsive Design Means Aligning to Business and User GoalsJohn Eckman
 
MoMoMcr Android Wear
MoMoMcr Android WearMoMoMcr Android Wear
MoMoMcr Android WearImran Younis
 
Harnessing Domain Driven Design
Harnessing Domain Driven DesignHarnessing Domain Driven Design
Harnessing Domain Driven DesignCapgemini
 
It's a long Way to the Top if you Wanna Rock 'n' Roll: Main Drivers & How Con...
It's a long Way to the Top if you Wanna Rock 'n' Roll: Main Drivers & How Con...It's a long Way to the Top if you Wanna Rock 'n' Roll: Main Drivers & How Con...
It's a long Way to the Top if you Wanna Rock 'n' Roll: Main Drivers & How Con...We Are Marketing
 
Digital Copycats: Escaping Plato's Cave (SXSW17)
Digital Copycats: Escaping Plato's Cave (SXSW17)Digital Copycats: Escaping Plato's Cave (SXSW17)
Digital Copycats: Escaping Plato's Cave (SXSW17)Will Anderson
 
Mastering the Client Consultation - The SCOPE Strategy (WordCamp Orlando 2017)
Mastering the Client Consultation - The SCOPE Strategy (WordCamp Orlando 2017)Mastering the Client Consultation - The SCOPE Strategy (WordCamp Orlando 2017)
Mastering the Client Consultation - The SCOPE Strategy (WordCamp Orlando 2017)Nathan Ingram
 
Analytics That Drive The Value Of Content
Analytics That Drive The Value Of Content  Analytics That Drive The Value Of Content
Analytics That Drive The Value Of Content Pajama Program
 
SDN Meet up Glasgow | 2018
SDN Meet up Glasgow | 2018SDN Meet up Glasgow | 2018
SDN Meet up Glasgow | 2018Snook
 
Lessons learned scrum mastering distributed teams - Agile Lyon 2019
Lessons learned scrum mastering distributed teams -  Agile Lyon 2019Lessons learned scrum mastering distributed teams -  Agile Lyon 2019
Lessons learned scrum mastering distributed teams - Agile Lyon 2019Antonio COBO CUENCA
 
Fall 22: "From Kubernetes to PaaS to... err, what's next"
Fall 22: "From Kubernetes to PaaS to... err, what's next"Fall 22: "From Kubernetes to PaaS to... err, what's next"
Fall 22: "From Kubernetes to PaaS to... err, what's next"Daniel Bryant
 
Beyond Digital - IAS Workshop 2011
Beyond Digital - IAS Workshop 2011Beyond Digital - IAS Workshop 2011
Beyond Digital - IAS Workshop 2011Samantha Starmer
 
Beyond Digital - IA Summit 2010 Workshop
Beyond Digital - IA Summit 2010 WorkshopBeyond Digital - IA Summit 2010 Workshop
Beyond Digital - IA Summit 2010 WorkshopSamantha Starmer
 
Sam Newman_Designing For Habitability.pdf
Sam Newman_Designing For Habitability.pdfSam Newman_Designing For Habitability.pdf
Sam Newman_Designing For Habitability.pdfVMware Tanzu
 
Setting AMP for Success at #BrightonSEO
Setting AMP for Success at #BrightonSEOSetting AMP for Success at #BrightonSEO
Setting AMP for Success at #BrightonSEOAleyda Solís
 
Digital Marketing Tips: Twitter, Instagram, Pinterest, Video - SEMdmv Meetup
Digital Marketing Tips: Twitter, Instagram, Pinterest, Video - SEMdmv MeetupDigital Marketing Tips: Twitter, Instagram, Pinterest, Video - SEMdmv Meetup
Digital Marketing Tips: Twitter, Instagram, Pinterest, Video - SEMdmv MeetupMark Alves
 
Setting The Agenda For Tomorrow's PR
Setting The Agenda For Tomorrow's PRSetting The Agenda For Tomorrow's PR
Setting The Agenda For Tomorrow's PRNeville Hobson
 
Salesforce Commerce Cloud & SEO - 5 Lessons.pptx
Salesforce Commerce Cloud & SEO - 5 Lessons.pptxSalesforce Commerce Cloud & SEO - 5 Lessons.pptx
Salesforce Commerce Cloud & SEO - 5 Lessons.pptxEdwin Romero
 

Similar to Practical microservices - NDC 2014 (20)

Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum...
Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum...Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum...
Keynote: Sam Newman, Building Microservices | The Tyranny Of Data | Kafka Sum...
 
INTERFACE by apidays - Microservices, APIs, and the Cost Of Change by Sam Newman
INTERFACE by apidays - Microservices, APIs, and the Cost Of Change by Sam NewmanINTERFACE by apidays - Microservices, APIs, and the Cost Of Change by Sam Newman
INTERFACE by apidays - Microservices, APIs, and the Cost Of Change by Sam Newman
 
Deploying & operating microservices
Deploying & operating microservicesDeploying & operating microservices
Deploying & operating microservices
 
Truly Responsive Design Means Aligning to Business and User Goals
Truly Responsive Design Means Aligning to Business and User GoalsTruly Responsive Design Means Aligning to Business and User Goals
Truly Responsive Design Means Aligning to Business and User Goals
 
MoMoMcr Android Wear
MoMoMcr Android WearMoMoMcr Android Wear
MoMoMcr Android Wear
 
Harnessing Domain Driven Design
Harnessing Domain Driven DesignHarnessing Domain Driven Design
Harnessing Domain Driven Design
 
It's a long Way to the Top if you Wanna Rock 'n' Roll: Main Drivers & How Con...
It's a long Way to the Top if you Wanna Rock 'n' Roll: Main Drivers & How Con...It's a long Way to the Top if you Wanna Rock 'n' Roll: Main Drivers & How Con...
It's a long Way to the Top if you Wanna Rock 'n' Roll: Main Drivers & How Con...
 
Digital Copycats: Escaping Plato's Cave (SXSW17)
Digital Copycats: Escaping Plato's Cave (SXSW17)Digital Copycats: Escaping Plato's Cave (SXSW17)
Digital Copycats: Escaping Plato's Cave (SXSW17)
 
Mastering the Client Consultation - The SCOPE Strategy (WordCamp Orlando 2017)
Mastering the Client Consultation - The SCOPE Strategy (WordCamp Orlando 2017)Mastering the Client Consultation - The SCOPE Strategy (WordCamp Orlando 2017)
Mastering the Client Consultation - The SCOPE Strategy (WordCamp Orlando 2017)
 
Analytics That Drive The Value Of Content
Analytics That Drive The Value Of Content  Analytics That Drive The Value Of Content
Analytics That Drive The Value Of Content
 
SDN Meet up Glasgow | 2018
SDN Meet up Glasgow | 2018SDN Meet up Glasgow | 2018
SDN Meet up Glasgow | 2018
 
Lessons learned scrum mastering distributed teams - Agile Lyon 2019
Lessons learned scrum mastering distributed teams -  Agile Lyon 2019Lessons learned scrum mastering distributed teams -  Agile Lyon 2019
Lessons learned scrum mastering distributed teams - Agile Lyon 2019
 
Fall 22: "From Kubernetes to PaaS to... err, what's next"
Fall 22: "From Kubernetes to PaaS to... err, what's next"Fall 22: "From Kubernetes to PaaS to... err, what's next"
Fall 22: "From Kubernetes to PaaS to... err, what's next"
 
Beyond Digital - IAS Workshop 2011
Beyond Digital - IAS Workshop 2011Beyond Digital - IAS Workshop 2011
Beyond Digital - IAS Workshop 2011
 
Beyond Digital - IA Summit 2010 Workshop
Beyond Digital - IA Summit 2010 WorkshopBeyond Digital - IA Summit 2010 Workshop
Beyond Digital - IA Summit 2010 Workshop
 
Sam Newman_Designing For Habitability.pdf
Sam Newman_Designing For Habitability.pdfSam Newman_Designing For Habitability.pdf
Sam Newman_Designing For Habitability.pdf
 
Setting AMP for Success at #BrightonSEO
Setting AMP for Success at #BrightonSEOSetting AMP for Success at #BrightonSEO
Setting AMP for Success at #BrightonSEO
 
Digital Marketing Tips: Twitter, Instagram, Pinterest, Video - SEMdmv Meetup
Digital Marketing Tips: Twitter, Instagram, Pinterest, Video - SEMdmv MeetupDigital Marketing Tips: Twitter, Instagram, Pinterest, Video - SEMdmv Meetup
Digital Marketing Tips: Twitter, Instagram, Pinterest, Video - SEMdmv Meetup
 
Setting The Agenda For Tomorrow's PR
Setting The Agenda For Tomorrow's PRSetting The Agenda For Tomorrow's PR
Setting The Agenda For Tomorrow's PR
 
Salesforce Commerce Cloud & SEO - 5 Lessons.pptx
Salesforce Commerce Cloud & SEO - 5 Lessons.pptxSalesforce Commerce Cloud & SEO - 5 Lessons.pptx
Salesforce Commerce Cloud & SEO - 5 Lessons.pptx
 

More from Sam Newman

Rip It Up - The Microservice Organisation
Rip It Up  - The Microservice OrganisationRip It Up  - The Microservice Organisation
Rip It Up - The Microservice OrganisationSam Newman
 
Principles of microservices ndc oslo
Principles of microservices   ndc osloPrinciples of microservices   ndc oslo
Principles of microservices ndc osloSam Newman
 
Principles of microservices velocity
Principles of microservices   velocityPrinciples of microservices   velocity
Principles of microservices velocitySam Newman
 
QCon Sao Paulo Keynote - Microservices, an Unexpected Journey
QCon Sao Paulo Keynote - Microservices, an Unexpected JourneyQCon Sao Paulo Keynote - Microservices, an Unexpected Journey
QCon Sao Paulo Keynote - Microservices, an Unexpected JourneySam Newman
 
Designing for rapid release goto 2012
Designing for rapid release   goto 2012Designing for rapid release   goto 2012
Designing for rapid release goto 2012Sam Newman
 
Surfing the event stream
Surfing the event streamSurfing the event stream
Surfing the event streamSam Newman
 

More from Sam Newman (6)

Rip It Up - The Microservice Organisation
Rip It Up  - The Microservice OrganisationRip It Up  - The Microservice Organisation
Rip It Up - The Microservice Organisation
 
Principles of microservices ndc oslo
Principles of microservices   ndc osloPrinciples of microservices   ndc oslo
Principles of microservices ndc oslo
 
Principles of microservices velocity
Principles of microservices   velocityPrinciples of microservices   velocity
Principles of microservices velocity
 
QCon Sao Paulo Keynote - Microservices, an Unexpected Journey
QCon Sao Paulo Keynote - Microservices, an Unexpected JourneyQCon Sao Paulo Keynote - Microservices, an Unexpected Journey
QCon Sao Paulo Keynote - Microservices, an Unexpected Journey
 
Designing for rapid release goto 2012
Designing for rapid release   goto 2012Designing for rapid release   goto 2012
Designing for rapid release goto 2012
 
Surfing the event stream
Surfing the event streamSurfing the event stream
Surfing the event stream
 

Recently uploaded

"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
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
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
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
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 

Recently uploaded (20)

"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
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
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
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
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 

Practical microservices - NDC 2014