.NET轻量级RPC框架:Rabbit.Rpc

释放双眼,带上耳机,听听看~!

什么是RPC?

RPC全称为:Remote Procedure Call Protocol,远程过程调用协议。

用.NET的技术可以理解为:Remoting、WCF。主要目的就是:实现服务的远程调用、远程执行,当然既然有协议那么其它语言(java、php等)还是可以调用基于RPC提供出去的服务。

Rabbit.Rpc项目情况

说来惭愧,Rabbit.Rpc我只开发了两三天,主要想先能用,后续在迭代,因为.NET管理平台等不起那么久。所以目前不推荐正式应用在商业项目中,但如果你只是用来研究或一些私人的小项目还是可以集成使用的,毕竟它很简单,代码量也不多。它采用了开源的****通信框架:DotNetty

**开源地址:**https://github.com/RabbitTeam/Rpc

优点

无侵入性,集成简单

像调用普通接口一样调用远程服务

易扩展

开源

特色功能

运行时客户端代理生成(基于Roslyn)

客户端代理预生成(基于Roslyn)

抽象的服务协调配置

下一步

客户端负载均衡

Zookeeper等第三方协调服务

日志集成

本地回环调用(开发时不需要请求到服务端等情况)

更高的性能

Protocol Buffer
序列化器

.NET Core适配

……

Examples

目的:远程调用服务,客户端不关闭的情况下更新业务逻辑。

添加一个简单的服务接口和实现。

.NET轻量级RPC框架:Rabbit.Rpc

客户端代码(运行时生成代理):

.NET轻量级RPC框架:Rabbit.Rpc

服务端代码:

.NET轻量级RPC框架:Rabbit.Rpc

运行服务端(会自动生成路由配置)、再运行客户端

.NET轻量级RPC框架:Rabbit.Rpc

修改业务逻辑

.NET轻量级RPC框架:Rabbit.Rpc

重新运行服务端后在在原来的客户端中尝试发起请求

.NET轻量级RPC框架:Rabbit.Rpc

客户端代码生成器

将你含有接口定义的dll放到“assemblies”目录下

      .NET轻量级RPC框架:Rabbit.Rpc

运行客户端代理生成器

    .NET轻量级RPC框架:Rabbit.Rpc

选择相应功能

.NET轻量级RPC框架:Rabbit.Rpc

去指定目录查看

.NET轻量级RPC框架:Rabbit.Rpc

使用

.NET轻量级RPC框架:Rabbit.Rpc

.NET轻量级RPC框架:Rabbit.Rpc

给TA打赏
共{{data.count}}人
人已打赏
安全经验

google adsense作弊及反作弊技术分析

2021-10-11 16:36:11

安全经验

安全咨询服务

2022-1-12 14:11:49

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索