Evento
Campionato do Mundo de Power BI DataViz
Feb 14, 4 PM - Mar 31, 4 PM
Con 4 posibilidades de entrar, poderías gañar un paquete de conferencias e facelo ao Live Grand Finale en Las Vegas
Máis informaciónEste explorador xa non é compatible.
Actualice a Microsoft Edge para dispoñer das funcionalidades máis recentes, as actualizacións de seguranza e a asistencia técnica.
Nota
Esta no es la versión más reciente de este artículo. Para la versión actual, consulte la versión de .NET 9 de este artículo.
Aviso
Esta versión de ASP.NET Core ya no se admite. Para obtener más información, consulte la directiva de compatibilidad de .NET y .NET Core. Para la versión actual, consulte la versión de .NET 9 de este artículo.
Importante
Esta información hace referencia a un producto en versión preliminar, el cual puede sufrir importantes modificaciones antes de que se publique la versión comercial. Microsoft no proporciona ninguna garantía, expresa o implícita, con respecto a la información proporcionada aquí.
Para la versión actual, consulte la versión de .NET 9 de este artículo.
En este artículo se ofrece un resumen de por qué el servicio gRPC de ASP.NET Core es una buena opción para los desarrolladores de Windows Communication Foundation (WCF) que quieren migrar a arquitecturas y plataformas modernas.
Aunque la implementación y el enfoque son diferentes para gRPC, la experiencia de desarrollo y consumo de servicios con gRPC debe ser intuitiva para los desarrolladores de WCF. WCF y gRPC son marcos de RPC (llamada a procedimiento remoto) con los mismos objetivos:
Ambas plataformas comparten el requisito de declarar e implementar una interfaz, aunque el proceso para declarar la interfaz es diferente. Los muchos tipos de llamadas RPC que gRPC admite se asignan bien a los enlaces disponibles en servicios WCF. Para más información y ejemplos, consulte Migración de una solución WCF a gRPC.
gRPC ofrece un marco mejor que otros enfoques por los siguientes motivos.
gRPC usa HTTP/2. A diferencia de HTTP/1.1, HTTP/2:
gRPC usa Protobuf, un formato binario y eficaz, para serializar mensajes. Los mensajes de Protobuf:
gRPC es una buena solución para dispositivos móviles y redes con restricciones de ancho de banda.
Hay herramientas y bibliotecas de gRPC para todos los lenguajes de programación y plataformas principales, como .NET, Java, Python, Go, C++, Node.js, Swift, Dart, Ruby y PHP. Gracias al formato de conexión binaria de Protobuf y la generación de código eficaz para cada plataforma, los desarrolladores pueden crear aplicaciones de rendimiento multiplataforma.
gRPC es una solución completa de RPC. Funciona de forma coherente en varios lenguajes y plataformas. También ofrece excelentes herramientas, con gran parte del código reutilizable que se genera automáticamente. Como WCF, gRPC genera automáticamente mensajes y un cliente fuertemente tipado. Se libera tiempo al desarrollador para que se centre en la lógica empresarial.
gRPC tiene un streaming bidireccional completo, que proporciona una funcionalidad similar a los servicios dúplex completo de WCF. La transmisión por secuencias de gRPC puede funcionar a través de conexiones de Internet normales, equilibradores de carga y mallas de servicio.
gRPC permite a los clientes especificar el tiempo máximo en que un RPC debe finalizar. Si se supera la fecha límite especificada, el servidor puede cancelar la operación independientemente del cliente. Las fechas límite y cancelaciones se pueden propagar a través de las llamadas subsiguientes de gRPC para ayudar a aplicar los límites de uso de recursos. Los clientes pueden detener las operaciones cuando se supera una fecha límite, o antes, si es necesario. Por ejemplo, los clientes pueden detener las operaciones debido a una interacción del usuario.
gRPC puede usar TLS y HTTP/2 para proporcionar una conexión cifrada de un extremo a otro entre el cliente y el servidor. La compatibilidad con la autenticación de certificados de cliente aumenta aún más la seguridad y la confianza entre el cliente y el servidor.
.NET Core y .NET 5 marcan un cambio en la forma en que Microsoft ofrece soluciones de comunicación remota a los desarrolladores que quieren ofrecer servicios a través de una variedad de plataformas. .NET Core y .NET 5 admiten llamadas a servicios WCF, pero no ofrecen compatibilidad del lado servidor para hospedar WCF.
Hay dos rutas de acceso recomendadas para modernizar aplicaciones WCF:
gRPC se basa en tecnologías modernas y ha surgido como la opción más popular en la comunidad de desarrolladores para aplicaciones RPC. A partir de .NET Core 3.0, las plataformas .NET modernas tienen una excelente compatibilidad con gRPC. La migración de servicios WCF para usar gRPC ayuda a proporcionar las características de RPC, el rendimiento, una interoperabilidad necesaria en las aplicaciones modernas.
CoreWCF es un esfuerzo de la comunidad por ofrecer compatibilidad con el hospedaje de servicios WCF en .NET Core y .NET 5. Hay disponible una versión preliminar y el proyecto avanza para estar preparado para la producción. CoreWCF solo admite un subconjunto de características de WCF y las aplicaciones de .NET Framework que se migran para usarlas necesitarán cambios en el código y pruebas para que se realicen correctamente. CoreWCF es una buena opción si una aplicación tiene que mantener la compatibilidad con los clientes existentes que llaman a servicios WCF.
Para obtener instrucciones detalladas sobre cómo crear servicios gRPC en ASP.NET Core para desarrolladores de WCF, consulte gRPC de ASP.NET Core para desarrolladores de WCF.
Comentarios de ASP.NET Core
ASP.NET Core é un proxecto de código aberto. Selecciona unha ligazón para ofrecer comentarios:
Evento
Campionato do Mundo de Power BI DataViz
Feb 14, 4 PM - Mar 31, 4 PM
Con 4 posibilidades de entrar, poderías gañar un paquete de conferencias e facelo ao Live Grand Finale en Las Vegas
Máis informaciónFormación
Camiño de aprendizaxe
Creación de aplicaciones y servicios nativos en la nube con .NET y ASP.NET Core - Training
Cree aplicaciones y servicios que se puedan implementar de forma independiente, muy escalables y resistentes mediante la plataforma .NET, gratuita y de código abierto. Con .NET puede usar una tecnología popular de microservicios como Docker, Kubernetes, Dapr, Azure Container Registry, etc., para aplicaciones y servicios principales de .NET y ASP.NET Core.
Documentación
Migración de gRPC de C-core a gRPC para .NET
Aprenda a mover una aplicación gRPC basada en C-core existente para que se ejecute sobre gRPC para .NET.
Solución de problemas de gRPC en .NET
Solución de problemas al usar gRPC en .NET.
Obtenga información sobre los servicios gRPC con el servidor de Kestrel y la pila de ASP.NET Core.