SlideShare a Scribd company logo
.NET Conf
Learn. Imagine. Build.
.NET Conf
The Microservices world in. NET Core and. NET
Framework
Massimo Bonanni
massimo.bonanni@microsoft.com
@massimobonanni
.NET Conf
.NET Conf
Microservices Architecture
.NET Conf
.NET Conf
.NET Conf
Traditional application approach Microservices application approach
• A microservice application
segregates functionality into
separate smaller services.
• Scales out by deploying each
service independently with
multiple instances across
servers/VMs
• A traditional application has
most of its functionality within a
few processes that are
componentized with layers and
libraries.
• Scales by cloning the app on
multiple servers/VMs
App 1 App 2App 1
.NET Conf
Stateless services
with
separate stores
• Single monolithic database
• Tiers of specific technologies
Data in Traditional approach Data in Microservices approach
• Graph of interconnected microservices
• State typically scoped to the microservice
• Remote Storage for cold data
Stateful
services
Web presentation
services
Stateless
services
SQL DB
or
No-SQL
Mobile
apps
Web Tier
Services Tier
Data Tier
Monolithic Databases are
shared across services.
Each microservice
owns its model/data!
SQL
[…]
Database servers are
usually the bottleneck
Cache Tier
Cache doesn’t help
much for massive data
ingress (Events, IoT, etc.)
.NET Conf
Is a unit of deploy
that can be
independently
versioned, deployed
and scaled
Has a unique name
that can be resolved
Interacts with other
microservices over
well defined interfaces
and protocols like
REST
Remains always
logically consistent in
the presence of
failures
Hosted inside a
container
Developed by a small
engineering team
.NET Conf
Microservices, Docker & .NET
.NET Conf
Official Docker Images
https://hub.docker.com
or
Cluster of
Nodes/Hosts
VM
App 1 App 2 My Docker Images
.NET Conf
https://docs.docker.com/swarm/overview/
.NET Conf
https://mesosphere.com/product/
.NET Conf
https://kubernetes.io/
.NET Conf
.NET Conf
Service Fabric
.NET Conf
Azure Other CloudsOn-Premise
Data centers
Dev Box
Service Fabric on
Linux in Azure
Preview
Service Fabric for
Linux
Coming 2017
Service Fabric
Windows SDK
Available
Service Fabric on
Windows in Azure
Available
Service Fabric in
Azure Stack GA
Coming 2017
Service Fabric for
Windows Server
Available
Service Fabric on
Linux in Azure
Available
.NET Conf
.NET Conf
.NET Conf
.NET Conf
.NET Conf
.NET Conf
.NET Conf
.NET Conf
.NET Conf
60bn events/day
.NET Conf
.NET Conf
Orchestrator Description Good for Common
workloads
Azure Service Fabric is a distributed
systems platform that makes it easy
to package, deploy, and manage
scalable and reliable microservices
a) Stateful svc & Actors
b) Microservices based
on plain processes
c) Microservices based
on containers
Docker Swarm is a clustering and
scheduling tool for Docker containers.
With Swarm, IT administrators and
developers can establish and manage
a cluster of Docker nodes as a single
virtual system
Microservices based on
containers
Kubernetes is an open-source platform
for automating deployment, scaling,
and operations of application
containers across clusters of hosts
Microservices based on
containers
As a datacenter operating system,
DC/OS is itself a distributed system, a
cluster manager and a container
platform
Microservices based on
containers (Including other
Linux containers, not just
Docker)
More mature:
Less mature:
More mature:
Less mature:
More mature:
Less mature:
Azure Product
Azure Service Fabric
Azure Container Service Docker Swarm
Service Fabric
Production-ready &
Microsoft ecosystem
Mesosphere DC/OS
More mature:
Less mature:
Production-ready &
Linux ecosystem
Easy to get started
Dev/Test and Production
Kubernetes
Production-ready &
Linux ecosystem
.NET Conf
.NET Conf
aka.ms/MicroservicesEbook aka.ms/MicroservicesArchitecture
Additional subjects covered in the eBook
Domain Driven Design Patterns
• Domain Models (Aggregates, Entity, VO, etc.)
• Simplified CQRS
• Dapper MicroORM for queries
• Commands and Mediator patter
• Domain Events (within the same microservice)
Microservices
• Integration Events (across microservices)
• Multi-container docker-compose.yml
• Swagger w/ Swashbuckle
• Security (Authentication/Authorization) with
tokens from IdentityServer4 wrapping ASP.NET
Identity
.NET Conf
dot.net/architecture
.NET Conf
The Microservices world in. NET Core and. NET framework

More Related Content

PDF
Building .NET Microservices
PPTX
Microservices using .Net core
PDF
Why Microservice
PDF
Design patterns for microservice architecture
PPTX
MSA ( Microservices Architecture ) 발표 자료 다운로드
PDF
Autoscaling Kubernetes
PPTX
Introduction to MERN
PPTX
Spring Cloud Config
Building .NET Microservices
Microservices using .Net core
Why Microservice
Design patterns for microservice architecture
MSA ( Microservices Architecture ) 발표 자료 다운로드
Autoscaling Kubernetes
Introduction to MERN
Spring Cloud Config

What's hot (20)

PDF
Kubernetes Architecture | Understanding Kubernetes Components | Kubernetes Tu...
PDF
Deploy 22 microservices from scratch in 30 mins with GitOps
PDF
Dot Net Core
PDF
Microservices with Java, Spring Boot and Spring Cloud
PPT
Docker introduction
PPTX
Azure kubernetes service
PDF
Kubernetes 101
PDF
What Is Kubernetes | Kubernetes Introduction | Kubernetes Tutorial For Beginn...
PPTX
Introduction to Docker - 2017
PDF
AWS Connectivity, VPC Design and Security Pro Tips
PDF
Introduction to CICD
PPTX
Kubernetes
PPTX
Api gateway in microservices
PPTX
CI/CD Overview
PPTX
Cloud computing by Google Cloud Platform - Presentation
PPTX
Docker: From Zero to Hero
PPTX
PPTX
Jenkins CI
PPTX
Kubernetes for Beginners: An Introductory Guide
PPTX
Kubernetes #1 intro
Kubernetes Architecture | Understanding Kubernetes Components | Kubernetes Tu...
Deploy 22 microservices from scratch in 30 mins with GitOps
Dot Net Core
Microservices with Java, Spring Boot and Spring Cloud
Docker introduction
Azure kubernetes service
Kubernetes 101
What Is Kubernetes | Kubernetes Introduction | Kubernetes Tutorial For Beginn...
Introduction to Docker - 2017
AWS Connectivity, VPC Design and Security Pro Tips
Introduction to CICD
Kubernetes
Api gateway in microservices
CI/CD Overview
Cloud computing by Google Cloud Platform - Presentation
Docker: From Zero to Hero
Jenkins CI
Kubernetes for Beginners: An Introductory Guide
Kubernetes #1 intro
Ad

Similar to The Microservices world in. NET Core and. NET framework (20)

PDF
Monolithic to Microservices Architecture
PDF
Microservices Cloud Club 2015-02-26
PPTX
Micro services
PDF
Container Networking Deep Dive
PDF
Net Pipeline on Windows Kubernetes
PDF
Azure Service Fabric - Hamida Rebai - CCDays
PPTX
Kubernetes solutions
PDF
Reference architectures shows a microservices deployed to Kubernetes
PPTX
Techdays SE 2016 - Micros.. err Microcosmos
PPTX
Microservices
PDF
Service fabric and azure service fabric mesh
PDF
Denodo in the Age of Containers: How to Simplify Operation of your Virtual Layer
PPTX
2020-02-10 Java on Azure Solution Briefing
PDF
Meteor South Bay Meetup - Kubernetes & Google Container Engine
PPTX
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
PDF
SDN in the Public Cloud: Windows Azure
PDF
Docker containers for wireless networks explained
PPTX
Moving Applications into Azure Kubernetes
PDF
Understanding Docker and IBM Bluemix Container Service
PPTX
Microservices and docker
Monolithic to Microservices Architecture
Microservices Cloud Club 2015-02-26
Micro services
Container Networking Deep Dive
Net Pipeline on Windows Kubernetes
Azure Service Fabric - Hamida Rebai - CCDays
Kubernetes solutions
Reference architectures shows a microservices deployed to Kubernetes
Techdays SE 2016 - Micros.. err Microcosmos
Microservices
Service fabric and azure service fabric mesh
Denodo in the Age of Containers: How to Simplify Operation of your Virtual Layer
2020-02-10 Java on Azure Solution Briefing
Meteor South Bay Meetup - Kubernetes & Google Container Engine
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
SDN in the Public Cloud: Windows Azure
Docker containers for wireless networks explained
Moving Applications into Azure Kubernetes
Understanding Docker and IBM Bluemix Container Service
Microservices and docker
Ad

More from Massimo Bonanni (20)

PDF
Empower every Azure Function to achieve more!!
PDF
Durable Functions vs Logic App : la guerra dei workflow!!
PDF
Stateful pattern con Azure Functions
PDF
Architetture Serverless con SQL Server e Azure Functions
PDF
IoT in salsa serverless
PDF
Tutto quello che avreste voluto sapere sull'API Management (e non avete mai o...
PDF
Stateful patterns in Azure Functions
PDF
IoT in salsa Serverless
PDF
The art of Azure Functions (unit) testing and monitoring
PDF
Empower every Azure Function to achieve more!!
PDF
The art of Azure Functions (unit) testing and monitoring
PDF
Everything you always wanted to know about API Management (but were afraid to...
PDF
Workflow as code with Azure Durable Functions
PDF
Xmas Serverless Transformation: when the elf doesn’t scale!
PPTX
Welcome Azure Functions 2. 0
PPTX
Discovering the Service Fabric's actor model
PPTX
Testing a Service Fabric solution and live happy!!
PPTX
Discovering the Service Fabric's actor model
PPTX
Soluzioni IoT con le tecnologie Microsoft
PPTX
Project Gesture & Real Sense: il potere nelle mani!!
Empower every Azure Function to achieve more!!
Durable Functions vs Logic App : la guerra dei workflow!!
Stateful pattern con Azure Functions
Architetture Serverless con SQL Server e Azure Functions
IoT in salsa serverless
Tutto quello che avreste voluto sapere sull'API Management (e non avete mai o...
Stateful patterns in Azure Functions
IoT in salsa Serverless
The art of Azure Functions (unit) testing and monitoring
Empower every Azure Function to achieve more!!
The art of Azure Functions (unit) testing and monitoring
Everything you always wanted to know about API Management (but were afraid to...
Workflow as code with Azure Durable Functions
Xmas Serverless Transformation: when the elf doesn’t scale!
Welcome Azure Functions 2. 0
Discovering the Service Fabric's actor model
Testing a Service Fabric solution and live happy!!
Discovering the Service Fabric's actor model
Soluzioni IoT con le tecnologie Microsoft
Project Gesture & Real Sense: il potere nelle mani!!

Recently uploaded (20)

PPTX
A Presentation on Artificial Intelligence
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
Cloud computing and distributed systems.
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Electronic commerce courselecture one. Pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Empathic Computing: Creating Shared Understanding
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Machine learning based COVID-19 study performance prediction
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
A Presentation on Artificial Intelligence
20250228 LYD VKU AI Blended-Learning.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Cloud computing and distributed systems.
The AUB Centre for AI in Media Proposal.docx
Per capita expenditure prediction using model stacking based on satellite ima...
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Electronic commerce courselecture one. Pdf
Review of recent advances in non-invasive hemoglobin estimation
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Unlocking AI with Model Context Protocol (MCP)
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Empathic Computing: Creating Shared Understanding
Dropbox Q2 2025 Financial Results & Investor Presentation
NewMind AI Weekly Chronicles - August'25 Week I
“AI and Expert System Decision Support & Business Intelligence Systems”
Machine learning based COVID-19 study performance prediction
Diabetes mellitus diagnosis method based random forest with bat algorithm
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf

The Microservices world in. NET Core and. NET framework

  • 1. .NET Conf Learn. Imagine. Build. .NET Conf The Microservices world in. NET Core and. NET Framework Massimo Bonanni massimo.bonanni@microsoft.com @massimobonanni
  • 6. .NET Conf Traditional application approach Microservices application approach • A microservice application segregates functionality into separate smaller services. • Scales out by deploying each service independently with multiple instances across servers/VMs • A traditional application has most of its functionality within a few processes that are componentized with layers and libraries. • Scales by cloning the app on multiple servers/VMs App 1 App 2App 1
  • 7. .NET Conf Stateless services with separate stores • Single monolithic database • Tiers of specific technologies Data in Traditional approach Data in Microservices approach • Graph of interconnected microservices • State typically scoped to the microservice • Remote Storage for cold data Stateful services Web presentation services Stateless services SQL DB or No-SQL Mobile apps Web Tier Services Tier Data Tier Monolithic Databases are shared across services. Each microservice owns its model/data! SQL […] Database servers are usually the bottleneck Cache Tier Cache doesn’t help much for massive data ingress (Events, IoT, etc.)
  • 8. .NET Conf Is a unit of deploy that can be independently versioned, deployed and scaled Has a unique name that can be resolved Interacts with other microservices over well defined interfaces and protocols like REST Remains always logically consistent in the presence of failures Hosted inside a container Developed by a small engineering team
  • 10. .NET Conf Official Docker Images https://hub.docker.com or Cluster of Nodes/Hosts VM App 1 App 2 My Docker Images
  • 16. .NET Conf Azure Other CloudsOn-Premise Data centers Dev Box Service Fabric on Linux in Azure Preview Service Fabric for Linux Coming 2017 Service Fabric Windows SDK Available Service Fabric on Windows in Azure Available Service Fabric in Azure Stack GA Coming 2017 Service Fabric for Windows Server Available Service Fabric on Linux in Azure Available
  • 27. .NET Conf Orchestrator Description Good for Common workloads Azure Service Fabric is a distributed systems platform that makes it easy to package, deploy, and manage scalable and reliable microservices a) Stateful svc & Actors b) Microservices based on plain processes c) Microservices based on containers Docker Swarm is a clustering and scheduling tool for Docker containers. With Swarm, IT administrators and developers can establish and manage a cluster of Docker nodes as a single virtual system Microservices based on containers Kubernetes is an open-source platform for automating deployment, scaling, and operations of application containers across clusters of hosts Microservices based on containers As a datacenter operating system, DC/OS is itself a distributed system, a cluster manager and a container platform Microservices based on containers (Including other Linux containers, not just Docker) More mature: Less mature: More mature: Less mature: More mature: Less mature: Azure Product Azure Service Fabric Azure Container Service Docker Swarm Service Fabric Production-ready & Microsoft ecosystem Mesosphere DC/OS More mature: Less mature: Production-ready & Linux ecosystem Easy to get started Dev/Test and Production Kubernetes Production-ready & Linux ecosystem
  • 29. .NET Conf aka.ms/MicroservicesEbook aka.ms/MicroservicesArchitecture Additional subjects covered in the eBook Domain Driven Design Patterns • Domain Models (Aggregates, Entity, VO, etc.) • Simplified CQRS • Dapper MicroORM for queries • Commands and Mediator patter • Domain Events (within the same microservice) Microservices • Integration Events (across microservices) • Multi-container docker-compose.yml • Swagger w/ Swashbuckle • Security (Authentication/Authorization) with tokens from IdentityServer4 wrapping ASP.NET Identity

Editor's Notes

  • #7: 30 secs
  • #10: 1 min
  • #14: For each service instance you use one container Docker images/containers are “units of deployment” A container is an instance of a Docker Image A host (VM/server) handles many containers https://blogs.msdn.microsoft.com/azureservicefabric/2016/04/25/orchestrating-containers-with-service-fabric/ Service Fabric will support the different types of containers discussed above in an upcoming release. At a high level, containers can be seen as encapsulated, individually deployable components running as isolated instances on the same kernel, leveraging operating system level virtualization. This means that each application, its runtime, dependencies, and system libraries run inside a container with full, private access to their own isolated view of operating system constructs. Along with portability, this degree of security and resource isolation is the main benefit for using containers with Service Fabric, which otherwise runs services in traditional processes. On Linux, this isolation has traditionally been provided by cgroups and namespaces, and Windows Server Containers (coming in Windows Server 2016) will behave similarly. In addition, Windows Server 2016 will offer Hyper-V Containers, an even higher level of security isolation for hostile multi-tenant scenarios. Figure 1 shows the different isolation levels.
  • #33: This slide is required. Do NOT delete. This should be the first slide after your Title Slide. This is an important year and we need to arm our attendees with the information they can use to Grow Share! Please ensure that your objectives are SMART (defined below) and that they will enable them to go in and win against the competition to grow share. If you have questions, please contact your Track PM for guidance. We have also posted guidance on writing good objectives, out on the Speaker Portal (https://www.mytechready.com).   This slide should introduce the session by identifying how this information helps the attendee, partners and customers be more successful. Why is this content important? This slide should call out what’s important about the session (sort of the why should we care, why is this important and how will it help our customers/partners be successful) as well as the key takeaways/objectives associated with the session. Call out what attendees will be able to execute on using the information gained in this session. What will they be able to walk away from this session and execute on with their customers. Good Objectives should be SMART (specific, measurable, achievable, realistic, time-bound). Focus on the key takeaways and why this information is important to the attendee, our partners and our customers. Each session has objectives defined and published on www.mytechready.com, please work with your Track PM to call these out here in the slide deck. If you have questions, please contact your Track PM. See slide 5 in this template for a complete list of Tracks and TPMs.