Curso de Udemy con descuento-Desarrollo paso a paso de este repositorio-> https://www.udemy.com/course/Using-rpc-in-microservices-communication-with-net-5/?couponcode=June23
Verifique la explicación de este repositorio en Medium-> https://medium.com/aspnetrun/Using-grpc-in-microservices-for-building-a-high-performance-interservice-comunicación-with-net-5-11f3e5fa0e9d
Consulte la imagen general de las implementaciones en GRPC en microservicios para construir una comunicación entre servicio de alto rendimiento con .NET 5 en el proyecto de microservicios de comercio electrónico del mundo real. Puede ver que tendremos 6 microservicios que vamos a desarrollar. Utilizaremos las aplicaciones de Worker Services y ASP.NET 5 GRPC para construir componentes GRPC del cliente y servidor que define los contratos de definición de servicio Proto.

Básicamente implementaremos la lógica de comercio electrónico con solo comunicación GRPC. Tendremos 3 aplicaciones de servidor GRPC que son productos: servicios de compras y servicios de descuento GRPC. Y tendremos 2 servicios de trabajadores que son servicios de trabajadores de productos y compras de compras. Los servicios de trabajadores serán clientes y realizarán operaciones a través de las aplicaciones del servidor GRPC. Y aseguraremos los servicios de GRPC con microservicios de servidor de identidad independiente con OAuth 2.0 y JWT Token.
En primer lugar, vamos a desarrollar el proyecto ProductGRPC. Esta será la aplicación web del servidor ASP.NET GRPC y expondrá las API para las operaciones de Product CRUD.
Después de eso, vamos a desarrollar un proyecto de servicio de trabajadores de productos para consumir servicios de productos. Este proyecto de servicio de trabajadores de productos será el cliente de la aplicación ProductGRPC y generará productos e insertará registros de productos a granel en la base de datos de productos mediante el uso de servicios de GRPC Proto de la aplicación ProductGRPC del cliente. Esta operación estará en un intervalo de tiempo y en bucle como una aplicación de servicio.
Después de eso, vamos a desarrollar el proyecto ShoppingCartGrpc. Esta será la aplicación web del servidor ASP.NET GRPC y expondrá las API para las operaciones de elementos SC y SC. Los servicios de GRPC serán SC y agregarán o eliminarán el elemento en SC.
Después de eso, vamos a desarrollar el Proyecto de Servicio de Trabajadores de CompetingCart para consumir servicios de compras en CartgrpC. Este proyecto de servicio de trabajadores de CompetingCart será el cliente de la aplicación ProductGRPC y ShoppingCartGRPC. Este servicio de trabajadores leerá los productos de ProductGRPC y creará SC y agregará elementos de productos a SC utilizando servicios GRPC Proto de ProductGRPC y ShoppingCartGRPC Aplicación. Esta operación estará en un intervalo de tiempo y en bucle como una aplicación de servicio.
Al agregar el artículo del producto a SC, recuperará el valor de descuento y calculará el precio final del producto. Esta comunicación también será GRPC Llamada con SCGRPC y la aplicación DescuenceGRPC.
Además, vamos a desarrollar un servidor de autenticación independiente centralizado con la implementación del paquete IdentityServer4 y el nombre de microservicio es el servidor de identidad. Identity Server4 es un marco de código abierto que implementa los protocolos OpenID Connect y OAuth2 para .NET Core. Con IdentityServer, podemos proporcionar proteger nuestros servicios SC GRPC con Tokens OAuth 2.0 y JWT. SC Worker obtendrá el token antes de enviar la solicitud a la aplicación SC GRPC Server.
Siga estos pasos para configurar su entorno de desarrollo: