- 
                Notifications
    
You must be signed in to change notification settings  - Fork 10.2k
 
Microservices Architecture eBook changelog
Reference commits : ad8ac33, cacaa85, 76c6a99, 8983735, a4ffedb, ee647de, a1bf7f9, 6e9af17, d49d0f6, ef7254b, 8accd57, 2976835
Contains changes in the following pages :
toc.ymlIndex- In module 
container-docker-introductionDocker terminology
 - In module 
net-core-net-framework-containersChoosing Between .NET 6 and .NET Framework for Docker ContainersGeneral guidanceWhen to choose .NET for Docker containersDeveloping and deploying cross platformUsing containers for new ("green-field") projectsCreate and deploy microservices on containersDeploying high density in scalable systemsDecision table. .NET frameworks to use for DockerWhat OS to target with .NET containersMigrating existing applications directly to a Windows Server containerOfficial .NET Docker images
 - In module 
architect-microservice-container-applicationsPublishing a single-container-based application to Azure App ServiceMicroservices addressability and the service registrySoftware platforms for container clustering, orchestration, and scheduling
 - In module 
docker-application-development-processIndex.NET languages and frameworks for Docker containersDevelopment workflow for Docker appsWorkflow for developing Docker container-based applicationsSet up your local environment with Visual StudioWorking with docker-compose.yml in Visual Studio 2022Testing and debugging containers with Visual Studio 2022Additional resources
 - In module 
multi-container-microservice-net-applicationsDefining your multi-container application with docker-compose.ymlBuilding optimized ASP.NET Core Docker images
 - In module 
implement-resilient-applicationsReference the .NET 6 packagesUse the HealthChecks feature in your back-end ASP.NET microservicesHealthChecks implementation in eShopOnContainers
 
Reference commits : 2005c49,5e40fc1, 1e2cfb2,4c7afea,e55bc52,a2105ae,f96cab7,732a6d3
Contains changes in the following pages :
- Updates Jitter strategy retry policy.
 - Updates code snippet of the CardType Enumeration class.
 - Fixes broken link.
 - Fixes typo.
 - Updates eShop 
WebSPAspecific images and url updates. - Adds new 
ValueObjectreference link. 
Contributions :
We’d like to acknowledge and thank the following community members for their valuable contributions !
@brokenthorn, @Bindsi, @vkhorikov
Reference commits : 53c20f1, 7018099
Contains changes in the following pages :
toc.ymlIndex- In module 
container-docker-introductionIntroduction to Containers and DockerDocker terminologyDocker containers, images, and registries
 - In module 
net-core-net-framework-containersChoosing Between .NET 5 and .NET Framework for Docker ContainersGeneral guidanceWhen to choose .NET 5 for Docker containersDecision table. .NET frameworks to use for DockerWhat OS to target with .NET containersOfficial .NET Docker images
 - In module 
architect-microservice-container-applicationsIndexArchitecting container and microservice-based applicationsThe API gateway pattern versus the direct client-to-microservice communicationCreating, evolving, and versioning microservice APIs and contractsMicroservices addressability and the service registryCreating composite UI based on microservicesResiliency and high availability in microservicesOrchestrate microservices and multi-container applications for high scalability and availability
 - In module 
docker-application-development-processIndexdocker-app-development-workflow
 - In module 
multi-container-microservice-net-applicationsDesigning a microservice-oriented applicationCreating a simple data-driven CRUD microserviceDefining your multi-container application with docker-compose.ymlUse a database server running as a containerImplementing event-based communication between microservices (integration events)Implementing an event bus with RabbitMQ for the development or test environmentSubscribing to eventsTesting ASP.NET Core services and web appsImplement background tasks in microservices with IHostedService and the BackgroundService class
 - In module 
microservice-ddd-cqrs-patternsapply-simplified-microservice-cqrs-ddd-patternsApplying CQRS and CQS approaches in a DDD microservice in eShopOnContainersImplementing reads/queries in a CQRS microserviceDesigning a DDD-oriented microservice
 - In module 
implement-resilient-applicationsImplement HTTP call retries with exponential backoff with PollyHealth monitoringUse IHttpClientFactory to implement resilient HTTP requests
 - In module 
secure-net-microservices-web-applicationsSecuring .NET Microservices and Web Applications.NET Microservices. Architecture for Containerized .NET Applications
 
Reference commits : 182fe95, a3789be, 153df0e, a7dfe75, 9eb4479, 1d89b18, 5f89393, b77b615, 7fb1d2a, 500c1d9, c81b647, 6d4ae6b, 26ac253, cc64143, 74844f0, 47c1701, d686801
- 
Fixes typo in the following pages :
Containerizing monolithic applicationsDevelopment workflow for Docker appsImplementing event-based communication between microservices (integration events)Implementing reads/queries in a CQRS microserviceImplementing API Gateways with OcelotCreating a simple data-driven CRUD microserviceImplementing a microservice domain model with .NET CoreDomain events. design and implementationUsing NoSQL databases as a persistence infrastructureHandling partial failureTesting ASP.NET Core services and web appsSecuring .NET Microservices and Web Applications
 - 
Fixes the code block annotation in the following pages :
Development workflow for Docker appsUse a database server running as a containerDefining your multi-container application with docker-compose.ymlImplementing API Gateways with OcelotDefining your multi-container application with docker-compose.yml
 - 
Fixes broken link in the following pages :
Asynchronous message-based communicationDevelopment workflow for Docker appsUsing Azure Key Vault to protect secrets at production timeUse IHttpClientFactory to implement resilient HTTP requestsTesting ASP.NET Core services and web apps
 - 
Changes docs prefix (https://docs.microsoft.com) in the following pages :
Asynchronous message-based communicationCommunication in a microservice architectureThe API gateway pattern versus the direct client-to-microservice communicationChallenges and solutions for distributed data managementState and data in Docker applicationsResiliency and high availability in microservicesOrchestrate microservices and multi-container applications for high scalability and availabilityDevelopment workflow for Docker appsUse IHttpClientFactory to implement resilient HTTP requestsDomain events. design and implementationImplementing value objectsImplementing the infrastructure persistence layer with Entity Framework CoreDesigning the microservice application layer and Web APIImplementing a microservice domain model with .NET CoreUsing NoSQL databases as a persistence infrastructureCreating a simple data-driven CRUD microserviceImplementing event-based communication between microservices (integration events)Designing a microservice-oriented application
 
Contributions :
We’d like to acknowledge and thank the following community members for their valuable contributions !
@zakaria-c, @nschonni , @DCtheGeek, @Youssef1313
Reference commits : 6317237, add8374, 05f6d3f, 540ff78, 0e1e2bb, b0f28cb, ce794ce, 09db01f
- Updates MediatR related content. Page : 
Implement the microservice application layer using the Web API - Adds the right 
DbContextobject and rephrases sentences to make it more meaningful. Page:Creating a simple data-driven CRUD microservice - Refactors ValueObject's Equals() method. Page : 
Implement value objects - Rephrases few sentences for a better understanding of the context. Page : 
Use IHttpClientFactory to implement resilient HTTP requests - Inclusion of 
Ocelot v16.0.0related breaking change note in the important section. Page :Implement API Gateways with Ocelot - Updates 
Ocelot API Gatway image. Page :Implement API Gateways with Ocelot - Fixes the following issues :
- Typo in the configuration code snippet. Page: 
Make secure .NET Microservices and Web Applications - Additional closing curly brace in the code snippet. Page: 
Health monitoring - Additional resource links. Page : 
Testing ASP.NET Core services and web apps - Broken additional resource links. Page : 
Testing ASP.NET Core services and web apps - Repetitive definition of 
IHostedService interface. Page:Creating a simple data-driven CRUD microservice - Obsolete SQL server image name in 
docker-compose.yml. Page:Development workflow for Docker apps 
 - Typo in the configuration code snippet. Page: 
 
- System requirements
 - Development setup
 - Databases & containers
 
- Architecture
 - Application
 - Code
 - Logging and Monitoring
 - Tests