我是靠谱客的博主 眯眯眼过客,最近开发中收集的这篇文章主要介绍.NET Core Love gRPC,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

这篇内容主要来自Microsoft .NET团队程序经理Sourabh Shirhatti的博客文章:https://grpc.io/blog/grpc-on-dotnetcore/, .NET Core 3.0现已提供grpc的.NET 托管实现 grpc-dotnet, gRpc 取代WCF成为 .NET的一等公民。自2018年11月以来,Microsoft的.NET团队一直与gRPC团队密切合作,共同开发适用于.NET Core的gRPC的全新完全托管实现。

gRpc 有非常多的公司在使用,比如 Salesforce,Netflix,Spotify,Fanatics等公司(当然还有Google),特别是整个CNCF 主导下的云原生应用开发生态里gRpc 有着举足轻重的地位。

.NET目前有两种正式的gRPC实现:

  • Grpc.Core:基于本地gRpc Core库的原生 gRpc C#实现,支持.NET Core 2.1/.NET Framework 4.5+/Mono 4+ 。

  • grpc-dotnet:完全以C#编写的新实现,没有任何本机依赖性,并且基于最新发布的.NET Core 3.0。

这两种实现并排共存,并且在可用功能,集成,支持的平台,成熟度和性能方面各有各的优势。两种实现共享用于调用和处理RPC的相同API,用户能够选择最能满足其需求的实现,而不会限制你必须使用某个平台。

与现有的基于C-Core的实现(Grpc.Core)不同,新库(grpc-dotnet)使用.NET Core基本类库(BCL)中的现有网络实现。下图突出显示了现有的Grpc.Core库和新的grpc-dotnet库之间的区别。

640?wx_fmt=png

在服务器端,Grpc.AspNetCore.Server软件包集成到ASP.NET Core中,使开发人员受益于ASP.NET Core已解决的日志,配置,依赖项注入,身份验证,授权等常见的交叉问题。现在,ASP.NET生态系统中的流行库(例如,实体框架核心(ORM),Serilog(日志记录库)和Identity Server等)与gRPC无缝协作。

在客户端,该Grpc.Net.Client软件包建立在HttpClient作为.NET Core一部分提供的熟悉的API的基础上。与服务器一样,gRPC客户端也从基于的软件包HttpClient的生态系统中 受益匪浅。 现在可以在gRPC客户端中使用现有的程序包,例如Polly和HttpClientFactory(管理HTTPClient生命周期)。

640?wx_fmt=png

下图列出了gRPC的所有新.NET软件包的详尽列表,以及它们与现有软件包的关系。

640?wx_fmt=png

Visual Studio 2019 对protobuf文件的语言语法提供了支持,并在保存protobuf文件时自动生成gRPC服务器/客户端代码,而无需由于设计时构建而需要完全重新编译项目。

gRpc 这么好用如何入门呢 ,微软的文档给我们准备了很详细,具体参见: https://docs.microsoft.com/zh-cn/aspnet/core/grpc/?view=aspnetcore-3.0 

前面我们提到了gRpc 取代WCF成为 .NET的一等公民,我们一定很怀念WCF那种利用代码定义服务锲约的方式,你一定会记得还有一个protobuf 开源实现protobuf-net: https://github.com/protobuf-net , 我以前在腾讯IT 使用WCF + Protobuf 构建微服务的系统,用的也是protobuf-net 这个库,而不是用WCF自带的二进制序列化,获得了更高的负载处理能力。protobuf-net.Grpc 使用本机Grpc.CoreAPI或完全托管的Grpc.Net.ClientGrpc.AspNetCore.ServerAPI 在gRPC上添加对服务的代码优先支持。

640?wx_fmt=png

.NET 团队还准备了一个电子书《适用于 WCF 开发人员的 ASP.NET Core gRPC》 https://dotnet.microsoft.com/learn/aspnet/architecture#grpc-for-wcf-devs-ebook-swim 对应的代码仓库:https://github.com/dotnet-architecture/grpc-for-wcf-developers

640?wx_fmt=png



640?wx_fmt=gif

我们从开始筹备2019 中国.NET 开发者峰会已经有好一段时间,从确定主题到寻找举办地,我们都是在业余时间进行,无论多么困难我们一定要办成功这次完全由中国.NET社区自发组织的大会,我们希望通过这次大会汇聚中国.NET社区的能量,能够让大众刷新对.NET的认知,也包括.NETer本身的刷新。

中国 .NET 开发者峰会

640?wx_fmt=png 

2019年11月9日 09:00-18:00

640?wx_fmt=png 

中国 上海

请输入标题

10月20日前购票可享受早鸟票100元优惠,只需199,限量300张,先到先得;超级早鸟票及社区特价票需要审核资料;购买团体票(大于10张)享受整单8折优惠,请通过邮箱联系主办方 dotnet@dotnetconf.cn

https://www.huodongxing.com/event/4514005355700

640?wx_fmt=png

扫描二维码,或点击【阅读原文】报名

相关文章:

原文链接:https://www.cnblogs.com/shanyou/p/11618376.html


.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com 

640?wx_fmt=jpeg

最后

以上就是眯眯眼过客为你收集整理的.NET Core Love gRPC的全部内容,希望文章能够帮你解决.NET Core Love gRPC所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(71)

评论列表共有 0 条评论

立即
投稿
返回
顶部