. NET microservice and Docker container,. netdocker container

Source: Internet
Author: User
Tags rabbitmq

. NET microservice and Docker container,. netdocker container
. NET microservice: Architecture containers and Docker introduction for containerized. NET applications what is Docker? Docker term Docker container, image, and registry select for Docker container. NET Core or. NET Framework general guide when to select for Docker containers.. NET Core when to select a Docker container. NET Framework Decision Table: used for Docker. NET Framework.. NET container. NET Docker image build containerized microservices application containerized integral application Docker application state and Data Service-Oriented Architecture microservice architecture the data sovereignty logic architecture and physical architecture of each microservice distributed Data Management Challenges and Solutions identify the domain model of each microservice border communication between microservices message-based Asynchronous Communication creation, improvement and Version Control microservice APIs and protocols microservice addressable and service registry creates a composite UI Based on microservices, it includes the visual UI shape generated by multiple microservices and the restoration and high availability arrangement of microservices and multi-container application business processes in microservices, to achieve high scalability and availability, use Azure Service FabricDocker application development process Docker Application Development workflow to deploy a single container on a Linux or Windows Nano Server host. NET Core Web applications are integrated with the old version.. NET Framework application migration to Windows container design and development of multi-container micro-services. NET application design microservice-oriented applications create simple data-driven CRUD microservices use docker-compose.yml to define multi-container applications use database servers that run as containers in microservices (integration events) use RabbitMQ to implement event bus subscription for development or test environments ASP. NET Core services and Web applications use the DDD and CQRS modes to reduce the business complexity of microservices. In microservices, use the simplified CQRS and DDD modes to apply CQRS and cqs to the ddd microservices of eShopOnContainers. the method is to implement the Read/Query Design in the CQRS microservice. The DDD-oriented microservice design microservice domain model is used. NET Core implements the microservice domain model Seedwork (applicable to reusable basic classes and interfaces of the domain model). The value objects use enumeration classes instead of enumeration classes) design and verify client verification in the domain model layer (verification in the presentation layer) domain events: design and implementation design the infrastructure persistence layer uses Entity Framework Core to implement the infrastructure persistence layer uses NoSQL databases as the persistence infrastructure design the application layer of microservices and Web APIs use Web APIs to implement restoration at the application layer of microservices application processing part failure error handling policy implementation using Exponential Backoff Algorithm retry implementation restoring Entity Framework Core SQL connection implementation using Exponential Backoff Algorithm custom HTTP call retry using Polly implementation HTTP call retry of Exponential Backoff Algorithm to monitor and protect the running status of circuit breaker mode. about. NET microservice and Web applications. NET microservice and Web application authorization securely store application secrets during development use of Azure Key Vault to protect secrets Key conclusions during production

 

Related microservices and container-based reference applications: eShopOnContainers

EShopOnContainers is an open-source application.

GitHub: https://github.com/dotnet-architecture/eShopOnContainers

 

 

The example application includes the following backend services:

• An identity microservice, which uses ASP. NET Core Identity and IdentityServer4.

• A catalog microservice, which is a data-driven, create, read, update, delete (CRUD) service that consumes an SQL Server database using EntityFramework Core.

• An ordering microservice, which is a domain-driven service that implements domain driven design patterns.

• A basket microservice, which is a data-driven CRUD service that uses Redis Cache

• A Marketing and Location microservices as example of No-SQL databases (MongoDB and CosmosDB ).

• An MVC watchdogs web app to query and show info from the HealthChecks (not shown in the above architecture digoal ).

These backend services use ASP. NET Web APIs to implement microservices and deploy them as a unique container on a single Docker host. Then, the client application communicates with the backend service through the Web interface indicating status transition (REST.

The microserver also communicates with asynchronous messages based on the event Bus implemented on RabbitMQ, but the event Bus can also be based on any other proxy or Service Bus, such as Azure Service Bus, NServiceBus, massTransit.

In addition, the sample application comes with three client applications:

• MVC applications developed using ASP. NET Core.

• Single-page applications (SPA) developed using Angular 2 and Typescript ).

• Cross-platform mobile applications developed using Xamarin. Forms.

 

Blog Introduction: https://blogs.msdn.microsoft.com/dotnet/2017/08/02/microservices-and-docker-containers-architecture-patterns-and-development-guidance/

Ebook document address: https://docs.microsoft.com/zh-cn/dotnet/standard/microservices-architecture/

Ebook PDF download: http://aka.ms/MicroservicesEbook

. NET application architecture center: https://www.microsoft.com/net/learn/architecture

 

If you think this article is helpful to you, click"Recommendation", Thank you.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.