FM.Grpc.Extensions
1.0.8
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package FM.Grpc.Extensions --version 1.0.8
NuGet\Install-Package FM.Grpc.Extensions -Version 1.0.8
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="FM.Grpc.Extensions" Version="1.0.8" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add FM.Grpc.Extensions --version 1.0.8
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: FM.Grpc.Extensions, 1.0.8"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install FM.Grpc.Extensions as a Cake Addin #addin nuget:?package=FM.Grpc.Extensions&version=1.0.8 // Install FM.Grpc.Extensions as a Cake Tool #tool nuget:?package=FM.Grpc.Extensions&version=1.0.8
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Grpc.Extesions
一个基于GRPC的简单微服务框架
功能
- 服务注册和发现
- 默认使用Consul实现
- 实现IServiceDiscovery,IServiceRegister可扩展
- 服务自动负载均衡
- 默认使用轮询实现,可切换随机算法
- 实现ILoadBalancer可扩展
- 服务端中件间
- 性能监控[日志,分布式调用链],全局错误处理,手动熔断
- 实现ServerInterceptor可扩展
- 客户端中件间
- 性能监控[日志,分布式调用链],超时时间设置
- 实现ClientInterceptor可扩展
- Grpc DashBoard
- Http远程调用,手动熔断,日志输出控制
- Grpc ProtoFirst
- 通过Proto生成代码和注释
- Grpc CodeFirst
- 通过代码生成proto和注释(GrpcMethod自动注册)
- 代码更干净且方便扩展,例如可以在ProtoMessage上打验证特性来统一处理验证逻辑等
- 更方便拆分GrpcService到多个类,而不是使用partial class
待完善
- 使用Polly实现重试,降级,熔断
依赖的技术栈
- dotnet standard 2.0
- gRPC - An RPC library and framework
- Consul - Service Discovery and Configuration Made Easy
- Polly - Polly is a .NET resilience and transient-fault-handling library
- OpenTracing(Jaeger) - a Distributed Tracing System
感谢
感谢以下的项目,排名不分先后
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.0
- AspectCore.Extensions.Reflection (>= 1.0.1)
- Consul (>= 0.7.2.6)
- Grpc (>= 1.16.0)
- Microsoft.CSharp (>= 4.5.0)
- Microsoft.Extensions.DependencyInjection (>= 2.1.1)
- Newtonsoft.Json (>= 11.0.2)
- protobuf-net (>= 2.4.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.4.8 | 759 | 7/21/2020 |
1.4.7 | 731 | 5/18/2020 |
1.4.7-alpha2 | 394 | 5/18/2020 |
1.4.7-alpha1 | 394 | 5/18/2020 |
1.4.6 | 666 | 4/30/2020 |
1.4.5 | 563 | 4/29/2020 |
1.4.4 | 827 | 3/19/2020 |
1.4.3 | 735 | 1/4/2020 |
1.4.1 | 613 | 10/11/2019 |
1.4.0 | 715 | 8/31/2019 |
1.3.4 | 619 | 8/31/2019 |
1.3.3 | 936 | 8/31/2019 |
1.3.2 | 641 | 8/31/2019 |
1.3.1 | 605 | 8/31/2019 |
1.3.0 | 636 | 8/31/2019 |
1.2.0 | 642 | 8/31/2019 |
1.0.8 | 626 | 8/31/2019 |
1.0.7 | 744 | 12/12/2018 |
1.0.6 | 815 | 11/15/2018 |
1.0.4 | 774 | 11/15/2018 |
1.0.1 | 766 | 11/14/2018 |