Building microservices

Building Microservices
Delhi Tech Meetup - 22/3/2017
{Prashant Parashar}
(Presentation slides used for the talk on “building micro-services”. Slides alone not a comprehensive material on the topic.)
Why, when ?
Two Pizza Teams
N(N-1)/2 is the number of conversation connections within a
team.
Should I move to MicroServices?
What’s your traffic?
What’s your team size?
How complex is the system?
Why?
Scale Platform Scale
Team scale
Why?
Reuse Reusability
Replaceability
Focused Evolution
“Don’t build microservices in a 5-people-startup!”
Hows & whats of building
Independent systems vs
micro-services
vs
Heterogeneous Interfaces
Federated Standards
Homogeneous Interfaces
Common Standards
Common design Language
Identification
Clear separation of concerns, Isolation
Not just CRUD
Self-sufficient
Management vision
Common design language
Interfaces, API language
Protocols
Security
Commons libraries
Other cross-cutting concerns
Clear architectural guidelines - Be pragmatic than ideal
Architectural Concerns - Security
Simplistic - manage at firewall
Intermediate - inter-service tokens
Advanced: Identity service, encryption etc [Avoid till
you can]
Architectural Concerns - Protocols
Create common libs for protocol standards [HTTP, Headers,
Marshaling protocols], connection pooling, failure
handling, logging etc
JSON, XML, Protobuf, all?
Provision for protocol/serialization versions! Always.
Architectural Concerns - Context
Manage context across sync and async calls!
Context should contain:
❏ Unique source request Id
❏ User/actor id
❏ Caller service id
❏ Specific server instances
❏ Security/authorization info, if applicable
Service Mess...Mesh
Tip: Define upstream/downstream levels
Cross-cutting (even log, security etc)
User
Aggregation
Do it closer to the user
UI Layers should have their own aggregation layer
Some duplication is okay
Develop/Deploy/Test/Debug
Testability
Automated tests is essential
Service level tests important
End-to-End tests?
Auto deploy with automated tests
Debugging
Be verbose
Track call chain. Carry as much context as you can.
Runtime Performance
Prepare for performance degradation of others
Use circuit breakers. Timeouts won’t help.
Isolation of problem is important. Design such.
Design for failure. Have product flag/alternative setup
Idempotent APIs help
Sync vs Async services - design for best & worst case
one-size fits all
Thanks!
www.prashantparashar.com
https://twitter.com/suco
der
1 of 23

Recommended

Road to Microservices by
Road to MicroservicesRoad to Microservices
Road to MicroservicesSalvatore Cordiano
1.4K views35 slides
Interoperability @ Microsoft by
Interoperability @ MicrosoftInteroperability @ Microsoft
Interoperability @ Microsoftukdpe
446 views9 slides
Explaining The Cloud by
Explaining The CloudExplaining The Cloud
Explaining The Cloudukdpe
879 views30 slides
Starting up workshop [first steps and nitty gritties] by
Starting up workshop [first steps and nitty gritties]Starting up workshop [first steps and nitty gritties]
Starting up workshop [first steps and nitty gritties]Prashant Parashar
743 views21 slides
2015 DevOps Breakfast - DevOps in Action by
2015 DevOps Breakfast - DevOps in Action2015 DevOps Breakfast - DevOps in Action
2015 DevOps Breakfast - DevOps in ActionNVISIA
544 views15 slides
Symfony2, Backbone.js & socket.io - SfLive Paris 2k13 - Wisembly by
Symfony2, Backbone.js & socket.io - SfLive Paris 2k13 - WisemblySymfony2, Backbone.js & socket.io - SfLive Paris 2k13 - Wisembly
Symfony2, Backbone.js & socket.io - SfLive Paris 2k13 - WisemblyGuillaume POTIER
20.2K views102 slides

More Related Content

Viewers also liked

gRPC: The Story of Microservices at Square by
gRPC: The Story of Microservices at SquaregRPC: The Story of Microservices at Square
gRPC: The Story of Microservices at SquareApigee | Google Cloud
17.7K views29 slides
Robert Kubis - gRPC - boilerplate to high-performance scalable APIs - code.t... by
 Robert Kubis - gRPC - boilerplate to high-performance scalable APIs - code.t... Robert Kubis - gRPC - boilerplate to high-performance scalable APIs - code.t...
Robert Kubis - gRPC - boilerplate to high-performance scalable APIs - code.t...AboutYouGmbH
13.4K views51 slides
Microservices + Oracle: A Bright Future by
Microservices + Oracle: A Bright FutureMicroservices + Oracle: A Bright Future
Microservices + Oracle: A Bright FutureKelly Goetsch
74.7K views107 slides
Webinar Best Practices to deal with frequent model changes of long running pr... by
Webinar Best Practices to deal with frequent model changes of long running pr...Webinar Best Practices to deal with frequent model changes of long running pr...
Webinar Best Practices to deal with frequent model changes of long running pr...camunda services GmbH
656 views41 slides
Devoxx2017 by
Devoxx2017Devoxx2017
Devoxx2017Bhakti Mehta
760 views52 slides
Master the flow of microservices - because your business is more complex than... by
Master the flow of microservices - because your business is more complex than...Master the flow of microservices - because your business is more complex than...
Master the flow of microservices - because your business is more complex than...Bernd Ruecker
1.3K views72 slides

Viewers also liked(7)

Robert Kubis - gRPC - boilerplate to high-performance scalable APIs - code.t... by AboutYouGmbH
 Robert Kubis - gRPC - boilerplate to high-performance scalable APIs - code.t... Robert Kubis - gRPC - boilerplate to high-performance scalable APIs - code.t...
Robert Kubis - gRPC - boilerplate to high-performance scalable APIs - code.t...
AboutYouGmbH13.4K views
Microservices + Oracle: A Bright Future by Kelly Goetsch
Microservices + Oracle: A Bright FutureMicroservices + Oracle: A Bright Future
Microservices + Oracle: A Bright Future
Kelly Goetsch74.7K views
Webinar Best Practices to deal with frequent model changes of long running pr... by camunda services GmbH
Webinar Best Practices to deal with frequent model changes of long running pr...Webinar Best Practices to deal with frequent model changes of long running pr...
Webinar Best Practices to deal with frequent model changes of long running pr...
Master the flow of microservices - because your business is more complex than... by Bernd Ruecker
Master the flow of microservices - because your business is more complex than...Master the flow of microservices - because your business is more complex than...
Master the flow of microservices - because your business is more complex than...
Bernd Ruecker1.3K views
How To Embed SlideShare Shows Into WordPress.com by Kathy Gill
How To Embed SlideShare Shows Into WordPress.comHow To Embed SlideShare Shows Into WordPress.com
How To Embed SlideShare Shows Into WordPress.com
Kathy Gill83K views

Similar to Building microservices

A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI... by
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...ijwscjournal
7 views15 slides
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI... by
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...ijwscjournal
8 views15 slides
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI... by
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...ijwscjournal
7 views15 slides
L02 Architecture by
L02 ArchitectureL02 Architecture
L02 ArchitectureÓlafur Andri Ragnarsson
652 views52 slides
Microservices and modern backends - Azure Meetup Frankfurt by
Microservices and modern backends  - Azure Meetup FrankfurtMicroservices and modern backends  - Azure Meetup Frankfurt
Microservices and modern backends - Azure Meetup FrankfurtDamir Dobric
498 views29 slides
Microservices - modern software architecture by
Microservices - modern software architectureMicroservices - modern software architecture
Microservices - modern software architectureBilguun Bayarmagnai
564 views33 slides

Similar to Building microservices(20)

A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI... by ijwscjournal
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...
ijwscjournal7 views
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI... by ijwscjournal
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...
ijwscjournal8 views
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI... by ijwscjournal
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...
A COMPOSITE DESIGN PATTERN FOR SERVICE INJECTION AND COMPOSITION OF WEB SERVI...
ijwscjournal7 views
Microservices and modern backends - Azure Meetup Frankfurt by Damir Dobric
Microservices and modern backends  - Azure Meetup FrankfurtMicroservices and modern backends  - Azure Meetup Frankfurt
Microservices and modern backends - Azure Meetup Frankfurt
Damir Dobric498 views
Domain Driven Design & Hexagonal Architecture by Can Pekdemir
Domain Driven Design & Hexagonal ArchitectureDomain Driven Design & Hexagonal Architecture
Domain Driven Design & Hexagonal Architecture
Can Pekdemir517 views
Microservices architecture enterprise architecture by Adhiguna Mahendra
Microservices architecture enterprise architectureMicroservices architecture enterprise architecture
Microservices architecture enterprise architecture
Oracle Code Sydney - There is no such thing as a microservice! by Chris Richardson
Oracle Code Sydney - There is no such thing as a microservice! Oracle Code Sydney - There is no such thing as a microservice!
Oracle Code Sydney - There is no such thing as a microservice!
Chris Richardson505 views
Intro to Microservices - SimtTLiX Tech Talk by Leo Marzo
Intro to Microservices - SimtTLiX Tech TalkIntro to Microservices - SimtTLiX Tech Talk
Intro to Microservices - SimtTLiX Tech Talk
Leo Marzo552 views
CWIN17 Utrecht / cg u services - frank van der wal by Capgemini
CWIN17 Utrecht / cg u services - frank van der walCWIN17 Utrecht / cg u services - frank van der wal
CWIN17 Utrecht / cg u services - frank van der wal
Capgemini307 views
Microservices Architecture & Testing Strategies by Araf Karsh Hamid
Microservices Architecture & Testing StrategiesMicroservices Architecture & Testing Strategies
Microservices Architecture & Testing Strategies
Araf Karsh Hamid2.8K views
Agile architecture upload by The Real Dyl
Agile architecture uploadAgile architecture upload
Agile architecture upload
The Real Dyl550 views
Introduction To Microservices by Lalit Kale
Introduction To MicroservicesIntroduction To Microservices
Introduction To Microservices
Lalit Kale1.1K views
At the Trailhead with Matt Stine by VMware Tanzu
At the Trailhead with Matt StineAt the Trailhead with Matt Stine
At the Trailhead with Matt Stine
VMware Tanzu273 views
Microservices: Where do they fit within a rapidly evolving integration archit... by Kim Clark
Microservices: Where do they fit within a rapidly evolving integration archit...Microservices: Where do they fit within a rapidly evolving integration archit...
Microservices: Where do they fit within a rapidly evolving integration archit...
Kim Clark5.8K views
Microsoft Microservices by Chase Aucoin
Microsoft MicroservicesMicrosoft Microservices
Microsoft Microservices
Chase Aucoin925 views
A journey from monolith to micro services by Pravin Mishra
A journey from monolith to micro servicesA journey from monolith to micro services
A journey from monolith to micro services
Pravin Mishra440 views

Recently uploaded

virtual reality.pptx by
virtual reality.pptxvirtual reality.pptx
virtual reality.pptxG036GaikwadSnehal
11 views15 slides
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N... by
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...James Anderson
85 views32 slides
Mini-Track: Challenges to Network Automation Adoption by
Mini-Track: Challenges to Network Automation AdoptionMini-Track: Challenges to Network Automation Adoption
Mini-Track: Challenges to Network Automation AdoptionNetwork Automation Forum
12 views27 slides
handbook for web 3 adoption.pdf by
handbook for web 3 adoption.pdfhandbook for web 3 adoption.pdf
handbook for web 3 adoption.pdfLiveplex
22 views16 slides
STPI OctaNE CoE Brochure.pdf by
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdfmadhurjyapb
14 views1 slide
Five Things You SHOULD Know About Postman by
Five Things You SHOULD Know About PostmanFive Things You SHOULD Know About Postman
Five Things You SHOULD Know About PostmanPostman
33 views43 slides

Recently uploaded(20)

GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N... by James Anderson
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
James Anderson85 views
handbook for web 3 adoption.pdf by Liveplex
handbook for web 3 adoption.pdfhandbook for web 3 adoption.pdf
handbook for web 3 adoption.pdf
Liveplex22 views
STPI OctaNE CoE Brochure.pdf by madhurjyapb
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdf
madhurjyapb14 views
Five Things You SHOULD Know About Postman by Postman
Five Things You SHOULD Know About PostmanFive Things You SHOULD Know About Postman
Five Things You SHOULD Know About Postman
Postman33 views
Serverless computing with Google Cloud (2023-24) by wesley chun
Serverless computing with Google Cloud (2023-24)Serverless computing with Google Cloud (2023-24)
Serverless computing with Google Cloud (2023-24)
wesley chun11 views
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by Network Automation Forum
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
AMAZON PRODUCT RESEARCH.pdf by JerikkLaureta
AMAZON PRODUCT RESEARCH.pdfAMAZON PRODUCT RESEARCH.pdf
AMAZON PRODUCT RESEARCH.pdf
JerikkLaureta26 views
SAP Automation Using Bar Code and FIORI.pdf by Virendra Rai, PMP
SAP Automation Using Bar Code and FIORI.pdfSAP Automation Using Bar Code and FIORI.pdf
SAP Automation Using Bar Code and FIORI.pdf
Attacking IoT Devices from a Web Perspective - Linux Day by Simone Onofri
Attacking IoT Devices from a Web Perspective - Linux Day Attacking IoT Devices from a Web Perspective - Linux Day
Attacking IoT Devices from a Web Perspective - Linux Day
Simone Onofri16 views
Voice Logger - Telephony Integration Solution at Aegis by Nirmal Sharma
Voice Logger - Telephony Integration Solution at AegisVoice Logger - Telephony Integration Solution at Aegis
Voice Logger - Telephony Integration Solution at Aegis
Nirmal Sharma39 views
Special_edition_innovator_2023.pdf by WillDavies22
Special_edition_innovator_2023.pdfSpecial_edition_innovator_2023.pdf
Special_edition_innovator_2023.pdf
WillDavies2217 views

Building microservices