特性一览
项目概况开源地址:https://github.com/RabbitTeam/Rpc Rabbit.Rpc(支持跨平台)Rpc核心类库,有如下功能:
Rabbit.Rpc.ProxyGenerator(支持跨平台)服务代理生成器,提供的功能: 服务代理实现生成 服务代理实例创建 extensions(相关扩展)Rabbit.Rpc.Codec.ProtoBuffer(支持跨平台)ProtoBuffer协议的编解码器实现。 Rabbit.Rpc.Coordinate.Zookeeper(支持跨平台)基于ZooKeeper的服务路由管理。 Rabbit.Transport.DotNetty(暂不支持跨平台)基于DotNetty的传输实现。 ps:官方以有将DotNetty支持NET Core的计划,大伙可以再等等,待官方支持后,会尽快进行适配。 Rabbit.Transport.Simple(支持跨平台)由于DotNetty不支持跨平台运行,为了让rpc能在其它平台上跑通,故移植了“Cowboy.Sockets”实现了一个简单的传输实现。 toolsRabbit.Rpc.Tests单元测试项目。 Rabbit.Rpc.ClientGenerator(支持跨平台)预生产服务代理的工具,提供了如下功能: 生成服务代理实现代码文件 生成服务代理实现程序集文件 性能测试测试环境
Windows10+NETCoreApp1.0+JSON协议+Simple传输概述
Windows10+NETCoreApp1.0+ProtoBuffer协议+Simple传输概述
Ubuntu16.04-x64+NETCoreApp1.0+JSON协议+Simple传输概述
Ubuntu16.04-x64+NETCoreApp1.0+ProtoBuffer协议+Simple传输概述
ps:linux性能与windows上的性能有一些差距,不知道是不是虚拟机的原因,但有个有趣的现象,protobuffer在linux上的性能居然比json低,应该是protobuffer库的实现不够优秀。 测试代码 https://github.com/RabbitTeam/Rpc/tree/master/src/examples/performances |
|
来自: weijianian > 《asp.net》