栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

分布式RPC框架

分布式RPC框架

一、fastCall基本介绍
    fastCall是一个基于Java语言的分布式RPC框架demo,供RPC初学者学习使用
    fastCall框架目前基于netty+zookeeper实现
    fastCall的设计架构主要参考了gRPC以及dubbo,分为客户端、服务端和注册中心,未来可能会加入服务治理监控中心,以及支持Restful API
二、fastCall RPC分布式框架的实现基础
    Call ID映射,在远程调用的过程中,每个方法都需要对应一个具有唯一性的ID,这个ID在客户端和服务端中都是唯一确定的,客户端在做远程调用时必须附上这个ID,fastCall框架使用方法签名作为ID
    序列化和反序列化,在参数传递和结果返回的过程中需要将传输的数据进行序列化和反序列化,以字节流的形式进行传输,fastCall采用protocol buffer作为序列化方式
    网络传输,使用一套网络传输协议进行网络传输,例如HTTP、TCP、UDP等,fastCall采用netty框架实现网络传输
    分布式实现,fastCall采用ZooKeeper作为注册中心实现分布式,分布式集群中的所有服务都要在ZooKeeper中进行注册,向ZooKeeper提供IP地址、端口等一系列信息,当发送方发送请求时,会从ZooKeeper注册中心中获取服务提供方的IP、端口,再向服务提供方请求服务
三、目前已完成
    client、server、callcenter(注册中心)的基本功能实现
    基于protobuf的序列化传输
    最小活跃数负载均衡算法
    服务器流量监控
四、未来待完成
    基于事件响应的end point状态监控
    扩展负载均衡算法
    注册中心与服务治理监控中心解耦
    side car模式
    restful gateway
    限流削峰工具
    分布式锁
五、其他
    该框架由我本人在携程集团实习期间业余时间编写,希望有更多的小伙伴能够一起交流技术心得,一起学习进步GitHub仓库地址:https://github.com/HelloWorld-Ian/fastCall
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/752931.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号