SlideShare a Scribd company logo
Enterprise
Microservices
(with api gateways, .net core and micro ORMs)
Krishnanand Sivaraj for BDotNet UG
Monolith Microservices
Common Patterns
● API gateway
● Cross cutting concerns
● Communication
● Service Discovery
● Reliability
● Data Management
● Observability
● Deployment
Patterns
● API gateway
Enterprise Microservices
Api Gateways
Ocelot
● Api Gateway for .net core
● Open-source
● Nuget
Ocelot Features
● Routing
● Request Aggregation
● Authentication
● Authorization
● Rate Limiting
● Caching
● Logging
● Tracing
● Service Discovery
Demo
● Watch me make a live api gateway on twitch.tv (in future)
● Showing ReRoutes
● Explaining upstream and downstream parameters
● Showing global configurations
● Explaining challenges with integrating swagger
Challenges with Ocelot and solution
● Swagger integration
● https://github.com/Burgyn/MMLib.SwaggerForOcelot
Patterns
● APIs
● Cross cutting concerns
● Communication
● Service Discovery
● Reliability
● Data Management
● Observability
● Deployment
Patterns
● Cross cutting concerns
○ Externalized configuration – creating configurations for environment
○ Logging – how we log errors with trace information
○ Health checks - Microsoft.AspNetCore.Diagnostics.HealthChecks ,
https://github.com/xabaril/beatpulse
○ Authentication – passing access tokens, bearer tokens
Patterns
● Cross cutting concerns
Patterns
● APIs
● Cross cutting concerns
● Communication
● Service Discovery
● Reliability
● Data Management
● Observability
● Deployment
Patterns
● Communication
Patterns
● APIs
● Cross cutting concerns
● Communication
● Service Discovery
● Reliability
● Data Management
● Observability
● Deployment
Patterns
● APIs
● Cross cutting concerns
● Communication
● Service Discovery
● Reliability
● Data Management
● Observability
● Deployment
Patterns
● Reliability
○ YouTube videos have a retry attempts for their apis (demo).
○ Is REST dying? gRPC
Patterns
● APIs
● Cross cutting concerns
● Communication
● Service Discovery
● Reliability
● Data Management
● Observability
● Deployment
Lessons learnt (from the past 4yrs)
● Not decomposing based on business model
● Not considering DevOps from the initial phase of development
● Keeping test automation at the last phase
● .net core vs .net standard
● Too many client libraries against bare-bone REST
Microservices Assessment Platform
● https://platform.microservices.io
MicroORM (Dapper)
● To be continued..
References
● Microservices.io
● .net’s eshoponcontainers
● https://www.c-sharpcorner.com/members/catcher-wong
Krishnanand Sivaraj
● Lead Software Engineer , Deloitte, Managed Services & Products (Thoughts are my own)
● Blog: https://devkrishnanandsivaraj.wordpress.com
● Twitch: https://www.twitch.tv/dreamproductshq
● Twitter: https://twitter.com/krishnanandsiva
Thank You

More Related Content

PDF
Laptop Devops: Putting Modern Infrastructure Automation to Work For Local Dev...
PPTX
Андрій Троян. Розробка мікросервісів з NestJS. OdessaJS'2021
PDF
'Effective node.js development' by Viktor Turskyi at OdessaJS'2020
PDF
OSGi for outsiders - Milen Dyankov
PPTX
Micro frontend architecture_presentation_ssoni
PDF
Make sure your code works
PDF
Building application in a "Microfrontends" way - Prasanna N Venkatesen *XConf...
PPTX
Mumbai MuleSoft Meetup #17 - GraphQL
Laptop Devops: Putting Modern Infrastructure Automation to Work For Local Dev...
Андрій Троян. Розробка мікросервісів з NestJS. OdessaJS'2021
'Effective node.js development' by Viktor Turskyi at OdessaJS'2020
OSGi for outsiders - Milen Dyankov
Micro frontend architecture_presentation_ssoni
Make sure your code works
Building application in a "Microfrontends" way - Prasanna N Venkatesen *XConf...
Mumbai MuleSoft Meetup #17 - GraphQL

What's hot (20)

PDF
Firefox and web performance testing, all hands sf 2018
PDF
Максим Климишин "Що такого особливого у пропозиції вартості шаблону Micro Fro...
PPTX
9th Manila MuleSoft Meetup July 2021
PPTX
vodQA Pune (2019) - Testing ethereum smart contracts
PDF
ContainerDays NYC 2015: "How Yodle Cleaned Up the Mess Using Containers and M...
PPTX
Indy meetup#7 effective unit-testing-mule
PPTX
Lightning talk how to edit the Silverstripe CMS docs
PDF
Trailblazer Rails Architecture
DOCX
Best Angular JS training in Hyderabad, India
ODP
Seminar on Web Application
PDF
Introduction to lambda behave
PPTX
Introduction to MuleSoft
PPTX
The current state of SAP Integration, SAPPHIRENOW 2018
PDF
Multitenant SaaS Apps In Rails By Iqbal Hasnan
PPTX
Riyadh Meetup4- Sonarqube for Mule 4 Code review
PDF
APIdays 2015 - The State of Web API Languages
PDF
Restlet Framework NG
PDF
Hundreds of Microservices without Breaking Your APIs
PPTX
Testing your applications with mbunit
PPTX
Hyperledger composer (from zero to hero )
Firefox and web performance testing, all hands sf 2018
Максим Климишин "Що такого особливого у пропозиції вартості шаблону Micro Fro...
9th Manila MuleSoft Meetup July 2021
vodQA Pune (2019) - Testing ethereum smart contracts
ContainerDays NYC 2015: "How Yodle Cleaned Up the Mess Using Containers and M...
Indy meetup#7 effective unit-testing-mule
Lightning talk how to edit the Silverstripe CMS docs
Trailblazer Rails Architecture
Best Angular JS training in Hyderabad, India
Seminar on Web Application
Introduction to lambda behave
Introduction to MuleSoft
The current state of SAP Integration, SAPPHIRENOW 2018
Multitenant SaaS Apps In Rails By Iqbal Hasnan
Riyadh Meetup4- Sonarqube for Mule 4 Code review
APIdays 2015 - The State of Web API Languages
Restlet Framework NG
Hundreds of Microservices without Breaking Your APIs
Testing your applications with mbunit
Hyperledger composer (from zero to hero )
Ad

Similar to Enterprise Microservices (20)

PDF
What is a Service Mesh and what can it do for your Microservices
PDF
DevOps for TYPO3 Teams and Projects
PPTX
Dynomite @ RedisConf 2017
PPTX
RedisConf17 - Dynomite - Making Non-distributed Databases Distributed
PDF
5 Pillars of Building Enterprise0grade APIs
PPTX
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
PDF
Microservices at Mercari
PDF
The working architecture of NodeJs applications
PDF
Node.js Course 2 of 2 - Advanced techniques
PDF
Kong API Gateway.pdf
PDF
Viktor Turskyi "Effective NodeJS Application Development"
PDF
Sprint 45 review
PPTX
Breaking down a monolith
PPTX
Semantic Validation: Enforcing Kafka Data Quality Through Schema-Driven Verif...
PDF
Liferay portals in real projects
PPTX
Demystifying microservices for JavaEE developers by Steve Millidge.
PDF
NetflixOSS Meetup S6E1 - Titus & Containers
PDF
Day1 before getting_started
PPTX
OpenTelemetry For Architects
PDF
Testing Tools Online Training.pdf
What is a Service Mesh and what can it do for your Microservices
DevOps for TYPO3 Teams and Projects
Dynomite @ RedisConf 2017
RedisConf17 - Dynomite - Making Non-distributed Databases Distributed
5 Pillars of Building Enterprise0grade APIs
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
Microservices at Mercari
The working architecture of NodeJs applications
Node.js Course 2 of 2 - Advanced techniques
Kong API Gateway.pdf
Viktor Turskyi "Effective NodeJS Application Development"
Sprint 45 review
Breaking down a monolith
Semantic Validation: Enforcing Kafka Data Quality Through Schema-Driven Verif...
Liferay portals in real projects
Demystifying microservices for JavaEE developers by Steve Millidge.
NetflixOSS Meetup S6E1 - Titus & Containers
Day1 before getting_started
OpenTelemetry For Architects
Testing Tools Online Training.pdf
Ad

Recently uploaded (20)

PPTX
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
PPTX
bas. eng. economics group 4 presentation 1.pptx
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PPTX
additive manufacturing of ss316l using mig welding
PPTX
Internet of Things (IOT) - A guide to understanding
PPT
Mechanical Engineering MATERIALS Selection
PDF
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
PDF
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
PPTX
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PPTX
Construction Project Organization Group 2.pptx
PPTX
Lecture Notes Electrical Wiring System Components
PDF
Embodied AI: Ushering in the Next Era of Intelligent Systems
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PPT
Project quality management in manufacturing
PPTX
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
Recipes for Real Time Voice AI WebRTC, SLMs and Open Source Software.pptx
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
bas. eng. economics group 4 presentation 1.pptx
UNIT-1 - COAL BASED THERMAL POWER PLANTS
Operating System & Kernel Study Guide-1 - converted.pdf
additive manufacturing of ss316l using mig welding
Internet of Things (IOT) - A guide to understanding
Mechanical Engineering MATERIALS Selection
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
MET 305 2019 SCHEME MODULE 2 COMPLETE.pptx
Model Code of Practice - Construction Work - 21102022 .pdf
Construction Project Organization Group 2.pptx
Lecture Notes Electrical Wiring System Components
Embodied AI: Ushering in the Next Era of Intelligent Systems
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
Project quality management in manufacturing
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx

Enterprise Microservices