当前位置: 首页 > news >正文

双云官方网站随州建设局网站

双云官方网站,随州建设局网站,慧聪网的网站建设策略,先锋大牌周爆款好价 79元起 查看详情gRPC 是一个现代的、跨平台的、高性能的 RPC 框架。gRPC 是构建在 ASP.NET Core 之上#xff0c;也是我们推荐的使用 .NET 构建 RPC 服务的方法。.NET 6 进一步提高了 gRPC 已经非常出色的性能#xff0c;并添加了一系列新功能#xff0c;使 gRPC 在现代云原生应用程序中比以… gRPC 是一个现代的、跨平台的、高性能的 RPC 框架。gRPC 是构建在 ASP.NET Core 之上也是我们推荐的使用 .NET 构建 RPC 服务的方法。.NET 6 进一步提高了 gRPC 已经非常出色的性能并添加了一系列新功能使 gRPC 在现代云原生应用程序中比以往任何时候都更好。在这篇文章中我将描述这些新功能以及我们如何通过第一个支持端到端 HTTP/3 的 gRPC 实现引领行业。gPRC 客户端负载均衡客户端负载平衡是一项允许 gRPC 客户端在可用服务器之间优化分配负载的功能。客户端负载平衡可以消除对负载平衡代理的需要。这有几个好处改进的性能。无代理意味着消除额外的网络跃点并减少延迟因为 RPC 直接发送到 gRPC 服务器。有效利用服务器资源。负载平衡代理必须解析然后重新发送通过它发送的每个 HTTP 请求。删除代理可以节省 CPU 和内存资源。更简单的应用程序架构。必须正确设置和配置代理服务器。没有代理服务器意味着更少的活动部件客户端负载均衡是在创建通道时配置的。使用负载均衡时要考虑的两个组件解析器解析通道的地址。解析器支持从外部源获取地址。这也称为服务发现。负载均衡器它创建连接并选择 gRPC 调用将使用的地址。以下代码示例将通道配置为使用具有循环负载平衡的 DNS 服务发现var channel GrpcChannel.ForAddress(    dns:///my-example-host,    newGrpcChannelOptions    {        Credentials ChannelCredentials.Insecure,        ServiceConfig newServiceConfig { LoadBalancingConfigs { newRoundRobinConfig() } }    });var client newGreet.GreeterClient(channel);var response await client.SayHelloAsync(newHelloRequest { Name world });更多信息请参阅 gPRC 客户端负载平衡。gPRC https://docs.microsoft.com/aspnet/core/grpc/gPRC 客户端负载平衡https://docs.microsoft.com/aspnet/core/grpc/loadbalancing带有重试的瞬间故障处理gRPC 调用可能会被瞬时故障中断。瞬态故障包括网络连接暂时中断。服务暂时不可用。由于服务器负载超时。当 gRPC 调用被中断时客户端会抛出一个包含错误详细信息的 RpcException。客户端应用程序必须捕获异常并选择如何处理错误。var client newGreeter.GreeterClient(channel);try{var response await client.SayHelloAsync(newHelloRequest{Name.NET});Console.WriteLine(From server: response.Message);}catch(RpcException ex){// Write logic to inspect the error and retry// if the error is from a transient fault.}在整个应用程序中复制重试逻辑是冗长且容易出错的。幸运的是.NET gRPC 客户端现在内置了对自动重试的支持。重试在通道上集中配置并且有许多选项可用于使用 RetryPolicy 自定义重试行为。var defaultMethodConfig newMethodConfig{Names{MethodName.Default},RetryPolicynewRetryPolicy{MaxAttempts5,InitialBackoffTimeSpan.FromSeconds(1),MaxBackoffTimeSpan.FromSeconds(5),BackoffMultiplier1.5,RetryableStatusCodes{StatusCode.Unavailable}}};// Clients created with this channel will automatically retry failed calls.var channel GrpcChannel.ForAddress(https://localhost:5001,newGrpcChannelOptions{ServiceConfignewServiceConfig{MethodConfigs{ defaultMethodConfig }}});有关更多信息请参阅使用 gRPC 重试进行瞬态故障处理。使用 gPRC 重试进行瞬态故障处理https://docs.microsoft.com/aspnet/core/grpc/retriesProtobuf 性能关于.NET 的 gRPC 使用 Google.Protobuf 包作为消息的默认序列化程序。Protobuf 是一种高效的二进制序列化格式。Google.Protobuf 旨在提高性能使用代码生成而不是反射来序列化 .NET 对象。在 .NET 5 中我们与 Protobuf 团队合作为序列化程序添加了对现代内存 API例如 SpanT、ReadOnlySequenceT和IBufferWriterT的支持。.NET 6 中的改进优化了一个已经很快的序列化程序。 protocolbuffers/protobuf#8147添加了矢量化字符串序列化。SIMD 指令允许并行处理多个字符从而在序列化某些字符串值时显着提高性能。privatestring _value newstring( ,10080);privatebyte[] _outputBuffer newbyte[10080];[Benchmark]publicvoidWriteString(){var span newSpanbyte(_outputBuffer);WriteContext.Initialize(ref span,outWriteContext ctx);ctx.WriteString(_value);ctx.Flush();}Method Google.ProtobufMeanRatioAllocatedWriteString3.148.838  us1.000 BWriteString3.18 2.919 ns0.330 Bprotocolbuffers/protobuf#7645添加了一个用于创建 ByteString 实例的新 API。如果你知道底层数据不会改变那么使用 UnsafeByteOperations.UnsafeWrap 来创建一个 ByteString 而不复制底层数据。如果应用程序处理大字节有效负载并且您想降低垃圾收集频率这将非常有用。protocolbuffers/protobuf#7645https://github.com/protocolbuffers/protobuf/pull/7645gPRC 下载速度gRPC 用户报告有时下载速度变慢。我们的调查发现当客户端和服务器之间存在延迟时HTTP/2 流量控制会限制下载。服务器在客户端可以耗尽之前填充接收缓冲区窗口导致服务器暂停发送数据。gRPC 消息以开始/停止突发方式下载。这已在 dotnet/runtime#54755中修复。HttpClient 现在动态缩放接收缓冲区窗口。建立HTTP/2 连接后客户端将向服务器发送 ping 以测量延迟。如果存在高延迟客户端会自动增加接收缓冲区窗口从而实现快速、连续的下载。privateGrpcChannel _channel GrpcChannel.ForAddress(...);privateDownloadClient _client newDownloadClient(_channel);[Benchmark]publicTaskGrpcLargeDownload()    _client.DownloadLargeMessageAsync(newEmptyMessage());MethodRuntimeMeanRatioGrpcLargeDownload.NET 5.06.33 s1.00GrpcLargeDownload.NET 6.01.65 s0.26dotnet/runtime#54755https://github.com/dotnet/runtime/pull/54755HTTP/3 支持NET 上的 gRPC 现在支持 HTTP/3。gRPC 建立在 .NET 6 中添加到 ASP.NET Core 和 HttpClient 的 HTTP/3 支持之上。有关更多信息请参阅.NET 6 中的 HTTP/3支持。.NET 是第一个支持端到端 HTTP/3 的 gRPC 实现我们已经为其他平台提交了 gRFC以便将来支持 HTTP/3。带有 HTTP/3 的 gRPC 是开发人员社区高度要求的功能很高兴看到 .NET 在该领域处于领先地位。.NET 6 中的 HTTP/3 https://devblogs.microsoft.com/dotnet/http-3-support-in-dotnet-6/gRFChttps://github.com/grpc/proposal/pull/256开发人员社区高度要求的功能https://github.com/grpc/grpc/issues/19126总结性能是 .NET 和 gRPC 的一个特性而 .NET 6 比以往任何时候都快。客户端负载平衡和 HTTP/3 等以性能为导向的新功能意味着更低的延迟、更高的吞吐量和更少的服务器。这是一个节省资金、减少能耗和构建更环保的云原生应用程序的机会。要试用新功能并开始在 .NET 中使用 gRPC最好的起点是在 ASP.NET Core 教程中创建 gRPC 客户端和服务器。我们期待听到有关使用 gRPC 和 .NET 构建的应用程序以及您在 dotnet 和 grpc 存储库中的贡献构建更环保的云原生应用程序 https://docs.microsoft.com/aspnet/core/tutorials/grpc/grpc-startdotnethttps://github.com/dotnetgrpchttps://github.com/grpc .NET 上的 gRPC参考文档
http://wiki.neutronadmin.com/news/56592/

相关文章:

  • 邯郸市网站建设网站别人做的收到方正侵权
  • 网站集约化建设会议议程网站收录查询系统
  • 公司注册资金需要多少山东网站seo开发
  • 企业网站做多大建设银行平潭招聘网站
  • 建设部科技项目申报网站益阳网站建设企业
  • 手机优化大师为什么扣钱资源网站优化排名
  • 建筑类网站建设wordpress漏洞复现
  • 请问哪里可以做网站打折网站运营思路
  • 手机上建设网站深入解析wordpress 原书第2版 pdf
  • 信专业广州网站建设百度推广搜索排名
  • 21年网站搭建公司排行榜wordpress 文章关键词
  • html 动漫网站中国建盏logo
  • 怎么样自己创建网站网站页面设计好了后台如何添加
  • 移动端网站建设重点有哪些哪个网站做兼职可以赚钱
  • 成都行业网站建设那里好wordpress+头像加速
  • 网站首页幻灯片不显示私人精品货源网站有哪些
  • 微信网站建设费用计入什么科目空间网站购买
  • 网站建设如何增加流量网络推广最好的网站有哪些
  • 站嗨免费建站iis 新建网站没有文件夹权限
  • 网站框架搭建设计惠州网红
  • 网站访问量的单位网站上文章分享的代码怎么做
  • 无锡做网站公司费用价格wordpress写公式
  • 如何在一个地方建设网站wordpress自定义二级菜单的标签
  • 成都网站建设定都兰县公司网站建设
  • 做网站需要营业执照吗国外做装修设计网站
  • 网站被挂马 301蒙阴蜜桃
  • 接平面设计私活的网站什么网站可以接室内设计做
  • 上海网站备案公司铜陵建筑工程网
  • 网站开发技术试验总结做网站先付款
  • 济南万速网站建设WordPress导航条之间得跳转