.NET Core 3.1 的REST 和gRPC 性能测试

栏目: IT技术 · 发布时间: 4年前

内容简介:看到越南小哥 的github 上的在8年前我写过一篇文章:

看到越南小哥 的github 上的 Evaluating Performance of REST vs. gRPC , 使用的是.NET Core 3.0 , 今天我把它升级到.NET Core 3.1 同样做了一个测试,文章的结果和他的博客文章是一样的: https://dev.to/thangchung/performance-benchmark-grpc-vs-rest-in-net-core-3-preview-8-45ak

在8年前我写过一篇文章: WCF和ASP.NET Web API在应用上的选择 。 现在是2020年了,WCF换成了gRPC, ASP.NET Web API换成了ASP.NET Core Web API, 对外提供标准化的REST服务,内部通信采用gRPC的也是新时代的.NET应用程序的一个好选择,类似于Kubernetes 架构将有效负载格式用于传输协议的方式。

.NET Core 3.1 的REST 和gRPC 性能测试

我们来看下.NET Core 3.1下REST和gRPC的性能表现怎么样? 从 https://github.com/geffzhang/RESTvsGRPC 下载代码。在测试机器上安装.NET Core 3.1。

  • REST API:
cd RESTvsGRPC\RestAPI
 dotnet run -p RestAPI.csproj -c Release
  • gRPC API:
cd RESTvsGRPC\GrpcAPI
 dotnet run -p GrpcAPI.csproj -c Release
  • 基准项目:
cd RESTvsGRPC\RESTvsGRPC
 dotnet run -p RESTvsGRPC.csproj -c Release
等待完成测试后,我们将会得到类似下面的结果,具体的结果依赖于你的测试机器配置,我使用Win10 的Surface Book 2上面完成的下面的测试结果:
<a href="https://img2020.cnblogs.com/blog/510/202004/510-20200411130838617-1696064662.png"><img width="573" height="502" title="image" alt="image" src="https://img2020.cnblogs.com/blog/510/202004/510-20200411130839127-362593873.png" border="0" /></a>
当接口返回的数据量比较小时候,REST 的性能要比gRPC要好,当数据量变大之后gRPC的性能优势就比较明显了。 .NET Core 3的 json 进行了大量的优化, 在处理消息有效负载中的小数据时会产生巨大的差异,但是实际上,对于大数据有效负载,差异就不复存在了。总体来说 gRPC在这一领域仍然是赢家。我并不是说哪个比另一个更好。我要说的是,我们需要在您的业务案例中使用哪种协议的适当策略。我们通常在与外部世界的外部通信(例如外部服务集成,与前端的通信)中使用REST通信,内部服务之间通信采用gRPC。

参考文献:


以上所述就是小编给大家介绍的《.NET Core 3.1 的REST 和gRPC 性能测试》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

SCWCD Exam Study Kit Second Edition

SCWCD Exam Study Kit Second Edition

Hanumant Deshmukh、Jignesh Malavia、Matthew Scarpino / Manning Publications / 2005-05-20 / USD 49.95

Aimed at helping Java developers, Servlet/JSP developers, and J2EE developers pass the Sun Certified Web Component Developer Exam (SCWCD 310-081), this study guide covers all aspects of the Servlet an......一起来看看 《SCWCD Exam Study Kit Second Edition》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

随机密码生成器
随机密码生成器

多种字符组合密码

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具