Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Architecting for Scale
Microservices at Netflix-Uber-Spotify Scale
Pooyan	Jamshidi
Foundations	of	
Software	Engineering
Learning	Goals
• Understand	the	value	of	microservices for	building	complex	
applications	that	need	to	operate	at	higher	s...
Disclaimer
• I	used	materials	from	
• Netflix	blog
• Spotify,	Uber	and	Netflix’s	architects	GOTO	talks
• And	some	other	so...
What	is	the	most	interesting	aspect	that	
you	have	learned	from	the	Netflix	talk?
Tradeoff	in	software	architecture
• Everything	is	tradeoff
• Try	to	make	them	intentionally
Organ	Systems
Each	organ	has	a	purpose
Organs	form	systems
Systems	form	an	organism
ELB
and	so	is	taking	traffic
Source:	Josh	Evans,	Mastering	Chaos	- A	Netflix	Guide	to	Microservices
Largest	Internet	TV	network
86	million	members
~190	countries,	10s	of	languages
125m	hours	content	per	day
Microservices o...
Netflix	DVD	Data	Center	- 2000
Linux	Host
Apache
Tomcat
Javaweb
STORE
Load	Balancer
BILLING
HTTP
JDBC
DB	Link
HTTP/S
Monol...
What	microservices are	not
Enterprise Service Bus (ESB)
Privacy
Service (PS)
Service
Consumer
Service
Consumer
Service
Con...
Edge
ELB
Zuul
NCCP
API
Middle	Tier	&	Platform
Product
• Bucket	testing
• Subscriber
• Recommendations
Platform
• Routing
•...
Architectural	pattern	1:	API	Gateway	
12
Source:	Kasun Indrasiri,	Microservices in	Practice:	From	Architecture	to	Deployme...
Architectural	pattern	2:	Inter-process	
Communication	in	a	Microservices Architecture	
13
Architectural	pattern	3:	Service	Discovery	in	a	
Microservices Architecture	
14
Architectural	pattern	4:	Event-Driven	Data	
Management	for	Microservices
15
There are two kinds of channels, point-to-poin...
Architectural	pattern	5:	Decentralized	Data	
Management
Christian	Posta,	The	Hardest	Part	About	Microservices:	Your	Data
Architectural	pattern	6:	Choosing	a	
Microservices Deployment	Strategy	
17
Architectural	pattern	7:	Security
18
Source:	Kasun Indrasiri,	Microservices in	Practice:	From	Architecture	to	Deployment
What	architectural	patterns	you	can	
identify	within	these	architectures?
Edge
ELB
Zuul
NCCP
API
Middle	Tier	&	Platform
Product
• Bucket	testing
• Subscriber
• Recommendations
Platform
• Routing
•...
Microservices at	Uber
21
Microservices
at	Spotify
22
Why	reliability	matters	in	
microservices world?
Linux	Host
Linux	Host
Linux	Host
Linux	Host
Intra-service	Requests
Linux	Host
Apache Tomcat
Linux	Host
Apache Tomcat
Netwo...
Crossing	the	Chasm
Source:	Josh	Evans,	Mastering	Chaos	- A	Netflix	Guide	to	Microservices
Cascading	Failure
Source:	Josh	Evans,	Mastering	Chaos	- A	Netflix	Guide	to	Microservices
Vaccination
Device Service	B	
Service	C
Internet EdgeZuul
Service	A	
ELB
FITSynthetic	transactions
Override	by	device	or	account
%	of	...
Device Service	B	
Service	C
Internet EdgeZuul
Service	A	
ELB
FIT
Fault	Injection	Testing	(FIT)
Enforced	throughout	the	cal...
ELB
API
API	
Gateway
App	1
App	2
App	4
App	5
App	6
App	3
App	7
App	8
99.99
99.99
99.99
99.99
99.99
99.99
99.99
99.99
Proxy
99.99 9...
Critical	Microservices
Persistence
In	the	presence	of	a	network	partition,	you	must	choose	
between	consistency	and	availability
CAP	Theorem
DB
DB
DB
Network...
Zone	A
Zone	B
Zone	C
Zone	B
Zone	C
Clien
t
Zone	A
Local	Quorum
(Typical)
100ms
Eventual	Consistency
Infrastructure
December	24th,	2012
US-East-1
Canada
No	place	to	go
US
Latin	America
US-East-1US-West-2 EU-West-1
Regional	failover
x x
Regional fail-over
Ruslan Meshenberg,	Microservices at	Netflix	Scale:	Principles,	Tradeoffs	&	Lesson...
Regional	failover
Regional fail-over
Ruslan Meshenberg,	Microservices at	Netflix	Scale:	Principles,	Tradeoffs	&	Lessons	Le...
What	is	a	stateless	service?
What	is	a	stateless	service?
• Not	a	cache	or	a	database
• Frequently	accessed	metadata
• No	instance	affinity
• Loss	a	no...
Source:	Josh	Evans,	Mastering	Chaos	- A	Netflix	Guide	to	Microservices
Minimum	size
Desired	capacity
Maximum	size
Scale	out	as	needed
S3AMI	retrieved	on	demand
Compute	efficiency
Node	failure
T...
Cluster	A Cluster	D
Edge	Cluster
Cluster	B
Cluster	C
Surviving Instance Failure
Source:	Josh	Evans,	Mastering	Chaos	- A	Ne...
What	is	a	stateful service?
What	is	a	stateless	service?
• Databases	and	caches
• Custom	apps	which	hold	data
• Loss	of	a	node	is	a	notable	event
Dedicated	Shards	– An	Antipattern
Squid	1 Squid	2 Squid	3
Client	Application
Subscriber	Client	Library
Cache	Client Servic...
Redundancy	is	fundamental
Zone	A Zone	B Zone	C
.	.	..	.	..	.	.
EVCache Writes
Client	Application
Client	Library
EVCache	Client
Client	Application
Cl...
Zone	A Zone	B Zone	C
Client	Application
Client	Library
EVCache	Client
.	.	..	.	..	.	.
EVCache Reads
Client	Application
Cli...
Why	automation,	in	all	software	
dev/ops	stages,	is	important?
Autonomic	Nervous
System
You	don’t	have	to	think	about	
digestion	or	breathing
Priorities
Our Priorities
1. Innovation
3. Efficiency
2. Reliability
Ruslan Meshenberg,	Microservices at	Netflix	Scale:	Pr...
Innovation:	tight	coupling	doesn’t	work
Monolithic	vs	Microservice-based	
Applications
59
Lee	Atchison,	Architecting	for	Scale:	High	Availability	for	Your	Growing...
End	to	end	ownership
60
End-end ownership + velocity
Architect
Design
Develop
ReviewTest
Deploy
Run
Support
Architect
Desi...
Kevin	Goldsmith,	Microservices @	Spotify
Server
Core Library
Platform Platform Platform Platform
Infrastructure
Kevin	Goldsmith,	Microservices @	Spotify
Challenges
Synchronization
Client UX implementation
Core Library Implementation
depends on
depends on
depends onServer Imp...
Kevin	Goldsmith,	Microservices @	Spotify
Full-stack autonomous
teams
Requires you to structure your
application in loosely coupled parts
Architecture	evolution	of	Spotify
67
Kevin	Goldsmith,	Microservices @	Spotify
Architecture	evolution	of	Spotify
68
69
70
71
LoadBallancer
72
Microservices:	Yay!
• Easier	to	Scale
• Easier	to	test
• Easier	to	deploy
• Easier	to	monitor	
• They	can	versioned	indepe...
Microservices:	Boo!
• Monitoring	lots	of	services
• Documentations	
• Increased	latency
75
What does this look like at Spotify?
‣ 810activeservices
‣ ~10Systemspersquad
‣ ~1.7Systemsperpersonwithaccessto
produc...
Microservices
at	Spotify
76
As of April 2016:
Uber Cities Worldwide: 400+
Countries: 70
Employees: 6,000+
Uber
Matt	Ranney,	What	I	Wish	I	Had	Known	Be...
Microservices at	Uber
79
Matt	Ranney,	What	I	Wish	I	Had	Known	Before	Scaling	Uber	to	1000	Services
pre-history PHP (outsourced)
Dispatch Node.JS, moving Go
Core Services Python, moving to Go
Maps Python and Java
Data Pyth...
LANGUAGES
Hard to share code
Hard to move between teams
WIWIK: Fragments the culture
Matt	Ranney,	What	I	Wish	I	Had	Known	...
Matt	Ranney,	What	I	Wish	I	Had	Known	Before	Scaling	Uber	to	1000	Services
Matt	Ranney,	What	I	Wish	I	Had	Known	Before	Scaling	Uber	to	1000	Services
Summary
• Microservices may	be	a	right	solution	for	building	complex	
applications	that	need	to	operate	at	higher	scale
• ...
Architecting for Scale
Architecting for Scale
Architecting for Scale
Upcoming SlideShare
Loading in …5
×

Architecting for Scale

1,887 views

Published on

Guest lecture talk in the CMU's Foundation of Software Engineering course: http://www.cs.cmu.edu/~ckaestne/15313/2017/

Published in: Software
  • The unmet emotional "need" that makes men fall in love ✱✱✱ https://dwz1.cc/C0LOhFpr
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • GIVE HER A BIGGER PACKAGE THIS VALENTINE'S DAY ★★★ http://t.cn/Ai88iYkP
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • New E-book Reveals Unique Holistic Strategies to Cure Acne. Discover How To Quickly And Easily Cure Acne Permanently...Even If Everything Else You Tried had Failed... Without Drugs, Without Over The Counters, and Without Nasty Side Effects - Guaranteed! ●●● https://tinyurl.com/ybbtmvh8
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Controversial method reveals inner psychology of techniques you can use to get your Ex back! See it now! ■■■ http://t.cn/R50e5nn
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Love spells to get your ex boyfriend or ex girlfriend back permanently.Call/WhatsApp Dr.Unity +2348055361568. Love spell from dr.Unity brought my husband back" After 12years of marriage, me and my husband has been into one quarrel or the other until he finally left me and moved to California to be with another woman. I felt my life was over and my kids thought they would never see their father again. i tried to be strong just for the kids but i could not control the pains that torments my heart, my heart was filled with sorrows and pains because i was really in love with my husband. Every day and night i think of him and always wish he could come back to me, I was really worried and i needed help, so i searched for help online and I came across a website that suggested that Dr Unity can help get ex back fast. So, I felt I should give him a try. I contacted him and he told me what to do and i did it then he did a Love spell for me. 11hours later, my husband really called me and told me that he miss me and the kids so much, So Amazing!! So that was how he came back that same day,with lots of love and joy,and he apologized for his mistake,and for the pain he caused me and the kids. Then from that day,our Marriage was now stronger than how it were before, All thanks to Dr Unity. he is so powerful and i decided to share my story on the internet that Dr.Unity is real spell caster who i will always pray to live long to help his children in the time of trouble, if you are here and you need your ex lover back or save your marriage fast. Do not cry anymore, contact this powerful spell caster Dr.Unity now. Here’s his contact,Email him at: Unityspelltemple@gmail.com or Call/WhatsApp him: +2348055361568, Check is website:https://unityspelltemples.blogspot.com ,your kindness will never be forgotten. Natasha Wanderly form USA.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Architecting for Scale

  1. 1. Architecting for Scale Microservices at Netflix-Uber-Spotify Scale Pooyan Jamshidi Foundations of Software Engineering
  2. 2. Learning Goals • Understand the value of microservices for building complex applications that need to operate at higher scale • Identify requirements that derive companies to migrate to microservices (contrast of requirements between companies) • Understand strategies for reliability of microservice architecture either at micro-level using design patterns or at a larger level • Build agile team structure that enable large scale companies to move fast (organizational challenges) • Understand challenges that Netflix-Uber-Spotify faced in realizing microservice based applications 2
  3. 3. Disclaimer • I used materials from • Netflix blog • Spotify, Uber and Netflix’s architects GOTO talks • And some other sources referenced in the slides • I’m a postdoc in Christian’s group • Software Engineering + Machine Learning • I worked as a software practitioners for 7 years • Pre-PhD • 4 years as a developer • 3 years as an architect • Involved in migration to cloud and microservices 2 IEEE SOFTWARE | PUBLISHED BY THE IEEE COMPUTER SOCIETY 0740-7459/16/$33.00 © 2016 IEEE Microservices Architecture Enables DevOps Migration to a Cloud-Native Architecture Armin Balalaie and Abbas Heydarnoori, Sharif University of Technology Pooyan Jamshidi, Imperial College London // This article reports on experiences and lessons learned during incremental migration and architectural refactoring of a commercial mobile back end as a service to microservices architecture. It explains how the researchers adopted DevOps and how this facilitated a smooth migration. // A LOOK AT the searches related to the term “microservices” on Google Trends revealed that the top searches are now technology driven. This im- plies that the time of general search terms such as “What is microser- vices?” has now long passed. Not only are software vendors (for ex- ample, IBM and Microsoft) using microservices and DevOps practices, but also content providers (for exam- ple, Netflix and the BBC) have ad- opted and are using them. In addition, Google Trends re- veals that both DevOps and mi- croservices are growing concepts, with an equal rate of growth after 2014 (see Figure 1). Although Dev- Ops can also be applied to mono- lithic software systems, microservices enable effective implementation of DevOps by promoting the impor- tance of small teams.1 (For more on DevOps and Microservices, see the related sidebar.) A microservices architecture is a cloud-native architecture that aims to realize software systems as a package of small services. Each ser- vice is independently deployable on a potentially different platform and technological stack. It can run in its own process while communicat- ing through lightweight mechanisms such as RESTful or RPC-based APIs—for example, Finagle. (REST stands for Representational State Transfer.) In this setting, each ser- vice is a business capability that can utilize various programming lan- guages and data stores and is devel- oped by a small team.2 Migrating monolithic architec- tures to microservices brings in many benefits. In particular, it pro- vides adaptability to technological changes to avoid technology lock-in and, more important, reduced time- to-market and better development team structuring around services.3 Here we explain our experiences and lessons learned during incre- mental migration of Backtory (www. backtory.com), a commercial mo- bile back end as a service (MBaaS), to microservices in the context of DevOps. Microservices help Back- tory in various ways, especially in shipping new features more fre- quently and providing scalability for the collective set of users from differ- ent mobile-app developers. Furthermore, we report on migra- tion patterns we developed on the basis of our observations in migra- tion projects. Practitioners can use these patterns to migrate monolithic software systems to microservices. In addition, system consultants can use FOCUS: DEVOPS
  4. 4. What is the most interesting aspect that you have learned from the Netflix talk?
  5. 5. Tradeoff in software architecture • Everything is tradeoff • Try to make them intentionally
  6. 6. Organ Systems Each organ has a purpose Organs form systems Systems form an organism
  7. 7. ELB and so is taking traffic Source: Josh Evans, Mastering Chaos - A Netflix Guide to Microservices
  8. 8. Largest Internet TV network 86 million members ~190 countries, 10s of languages 125m hours content per day Microservices on AWS Source: Josh Evans, Mastering Chaos - A Netflix Guide to Microservices
  9. 9. Netflix DVD Data Center - 2000 Linux Host Apache Tomcat Javaweb STORE Load Balancer BILLING HTTP JDBC DB Link HTTP/S Monolithic code base Monolithic database Tightly coupled architecture What microservices are not
  10. 10. What microservices are not Enterprise Service Bus (ESB) Privacy Service (PS) Service Consumer Service Consumer Service Consumer Service Provider Service Provider Service Provider Other Services Routing Service Registry Transport Replication • Message Routing • Message Monitoring • Service Replication • Language transforma
  11. 11. Edge ELB Zuul NCCP API Middle Tier & Platform Product • Bucket testing • Subscriber • Recommendations Platform • Routing • Configuration • Crypto Persistence • Cache • Database Source: Josh Evans, Mastering Chaos - A Netflix Guide to Microservices
  12. 12. Architectural pattern 1: API Gateway 12 Source: Kasun Indrasiri, Microservices in Practice: From Architecture to Deployment
  13. 13. Architectural pattern 2: Inter-process Communication in a Microservices Architecture 13
  14. 14. Architectural pattern 3: Service Discovery in a Microservices Architecture 14
  15. 15. Architectural pattern 4: Event-Driven Data Management for Microservices 15 There are two kinds of channels, point-to-point and publish-subscribe: • A point-to-point channel delivers a message to exactly one of the consumers that are reading from the channel. Services use point-to-point channels for the one-to-one interaction styles described earlier • A publish-subscribe channel delivers each message to all of the attached consumers. Services use publish-subscribe channels for the one-to-many interaction styles described above Figure 3-4 shows how the taxi-hailing application might use publish-subscribe channels Figure 3-4. Using publish-subscribe channels in a taxi-hailing application. DISPATCHER TRIP CREATED DRIVER PROPOSED TRIP MANAGEMENT PASSENGER MANAGEMENT DRIVER MANAGEMENT Chris Richadson, Microservices from Design to Deployment
  16. 16. Architectural pattern 5: Decentralized Data Management Christian Posta, The Hardest Part About Microservices: Your Data
  17. 17. Architectural pattern 6: Choosing a Microservices Deployment Strategy 17
  18. 18. Architectural pattern 7: Security 18 Source: Kasun Indrasiri, Microservices in Practice: From Architecture to Deployment
  19. 19. What architectural patterns you can identify within these architectures?
  20. 20. Edge ELB Zuul NCCP API Middle Tier & Platform Product • Bucket testing • Subscriber • Recommendations Platform • Routing • Configuration • Crypto Persistence • Cache • Database Source: Josh Evans, Mastering Chaos - A Netflix Guide to Microservices
  21. 21. Microservices at Uber 21
  22. 22. Microservices at Spotify 22
  23. 23. Why reliability matters in microservices world?
  24. 24. Linux Host Linux Host Linux Host Linux Host Intra-service Requests Linux Host Apache Tomcat Linux Host Apache Tomcat Network latency, congestion, failure Logical or scaling failure Service A Service B Source: Josh Evans, Mastering Chaos - A Netflix Guide to Microservices
  25. 25. Crossing the Chasm Source: Josh Evans, Mastering Chaos - A Netflix Guide to Microservices
  26. 26. Cascading Failure Source: Josh Evans, Mastering Chaos - A Netflix Guide to Microservices
  27. 27. Vaccination
  28. 28. Device Service B Service C Internet EdgeZuul Service A ELB FITSynthetic transactions Override by device or account % of live traffic up to 100% Fault Injection Testing (FIT) Source: Josh Evans, Mastering Chaos - A Netflix Guide to Microservices
  29. 29. Device Service B Service C Internet EdgeZuul Service A ELB FIT Fault Injection Testing (FIT) Enforced throughout the call path Source: Josh Evans, Mastering Chaos - A Netflix Guide to Microservices
  30. 30. ELB API
  31. 31. API Gateway App 1 App 2 App 4 App 5 App 6 App 3 App 7 App 8 99.99 99.99 99.99 99.99 99.99 99.99 99.99 99.99 Proxy 99.99 99.99 Combinatorial Math 99.9910 = 99.9
  32. 32. Critical Microservices
  33. 33. Persistence
  34. 34. In the presence of a network partition, you must choose between consistency and availability CAP Theorem DB DB DB Network B Network C Network D Service Network A X
  35. 35. Zone A Zone B Zone C Zone B Zone C Clien t Zone A Local Quorum (Typical) 100ms Eventual Consistency
  36. 36. Infrastructure
  37. 37. December 24th, 2012
  38. 38. US-East-1 Canada No place to go US Latin America
  39. 39. US-East-1US-West-2 EU-West-1
  40. 40. Regional failover x x Regional fail-over Ruslan Meshenberg, Microservices at Netflix Scale: Principles, Tradeoffs & Lessons Learned
  41. 41. Regional failover Regional fail-over Ruslan Meshenberg, Microservices at Netflix Scale: Principles, Tradeoffs & Lessons Learned
  42. 42. What is a stateless service?
  43. 43. What is a stateless service? • Not a cache or a database • Frequently accessed metadata • No instance affinity • Loss a node is a non-event
  44. 44. Source: Josh Evans, Mastering Chaos - A Netflix Guide to Microservices
  45. 45. Minimum size Desired capacity Maximum size Scale out as needed S3AMI retrieved on demand Compute efficiency Node failure Traffic spikes Performance bugs Auto Scaling Groups
  46. 46. Cluster A Cluster D Edge Cluster Cluster B Cluster C Surviving Instance Failure Source: Josh Evans, Mastering Chaos - A Netflix Guide to Microservices
  47. 47. What is a stateful service?
  48. 48. What is a stateless service? • Databases and caches • Custom apps which hold data • Loss of a node is a notable event
  49. 49. Dedicated Shards – An Antipattern Squid 1 Squid 2 Squid 3 Client Application Subscriber Client Library Cache Client Service Client S S S S. . . DB DB DB DB. . . Squid n HA Proxy Set 1 Set 2 Set 3 Set n X
  50. 50. Redundancy is fundamental
  51. 51. Zone A Zone B Zone C . . .. . .. . . EVCache Writes Client Application Client Library EVCache Client Client Application Client Library EVCache Client Client Application Client Library EVCache Client . . .
  52. 52. Zone A Zone B Zone C Client Application Client Library EVCache Client . . .. . .. . . EVCache Reads Client Application Client Library EVCache Client Client Application Client Library EVCache Client . . .
  53. 53. Why automation, in all software dev/ops stages, is important?
  54. 54. Autonomic Nervous System You don’t have to think about digestion or breathing
  55. 55. Priorities Our Priorities 1. Innovation 3. Efficiency 2. Reliability Ruslan Meshenberg, Microservices at Netflix Scale: Principles, Tradeoffs & Lessons Learned
  56. 56. Innovation: tight coupling doesn’t work
  57. 57. Monolithic vs Microservice-based Applications 59 Lee Atchison, Architecting for Scale: High Availability for Your Growing Applications
  58. 58. End to end ownership 60 End-end ownership + velocity Architect Design Develop ReviewTest Deploy Run Support Architect Design Develop ReviewTest Deploy Run Support Architect Design Develop ReviewTest Deploy Run Support Architect Design Develop ReviewTest Deploy Run Support Architect Design Develop ReviewTest Deploy Run Support Architect Design Develop ReviewTest Deploy Run Support Architect Design Develop ReviewTest Deploy Run Support Architect Design Develop ReviewTest Deploy Run Support Architect Design Develop ReviewTest Deploy Run Support Architect Design Develop ReviewTest Deploy Run Support Architect Design Develop ReviewTest Deploy Run Support Architect Design Develop ReviewTest Deploy Run Support Ruslan Meshenberg, Microservices at Netflix Scale: Principles, Tradeoffs & Lessons Learned
  59. 59. Kevin Goldsmith, Microservices @ Spotify
  60. 60. Server Core Library Platform Platform Platform Platform Infrastructure Kevin Goldsmith, Microservices @ Spotify
  61. 61. Challenges Synchronization Client UX implementation Core Library Implementation depends on depends on depends onServer Implementation Infrastructure Implementation Kevin Goldsmith, Microservices @ Spotify
  62. 62. Kevin Goldsmith, Microservices @ Spotify
  63. 63. Full-stack autonomous teams Requires you to structure your application in loosely coupled parts
  64. 64. Architecture evolution of Spotify 67 Kevin Goldsmith, Microservices @ Spotify
  65. 65. Architecture evolution of Spotify 68
  66. 66. 69
  67. 67. 70
  68. 68. 71 LoadBallancer
  69. 69. 72
  70. 70. Microservices: Yay! • Easier to Scale • Easier to test • Easier to deploy • Easier to monitor • They can versioned independently
  71. 71. Microservices: Boo! • Monitoring lots of services • Documentations • Increased latency
  72. 72. 75 What does this look like at Spotify? ‣ 810activeservices ‣ ~10Systemspersquad ‣ ~1.7Systemsperpersonwithaccessto productionservers ‣ ~1.15Systemspermemberof Technology
  73. 73. Microservices at Spotify 76
  74. 74. As of April 2016: Uber Cities Worldwide: 400+ Countries: 70 Employees: 6,000+ Uber Matt Ranney, What I Wish I Had Known Before Scaling Uber to 1000 Services
  75. 75. Microservices at Uber 79 Matt Ranney, What I Wish I Had Known Before Scaling Uber to 1000 Services
  76. 76. pre-history PHP (outsourced) Dispatch Node.JS, moving Go Core Services Python, moving to Go Maps Python and Java Data Python and Java Metrics Go Matt Ranney, What I Wish I Had Known Before Scaling Uber to 1000 Services
  77. 77. LANGUAGES Hard to share code Hard to move between teams WIWIK: Fragments the culture Matt Ranney, What I Wish I Had Known Before Scaling Uber to 1000 Services
  78. 78. Matt Ranney, What I Wish I Had Known Before Scaling Uber to 1000 Services
  79. 79. Matt Ranney, What I Wish I Had Known Before Scaling Uber to 1000 Services
  80. 80. Summary • Microservices may be a right solution for building complex applications that need to operate at higher scale • Tradeoffs that companies made to migrate to microservices (contrast of requirements between companies) • Making reliable microservice architecture requires strategies to deal with failure either at micro-level or at a larger level • Microservices architecture help to build agile team structure that enable large scale companies to move fast (organizational challenges)

×