实现基于Netty的RPC框架

      最后更新:2022-01-23 01:57:21 手机定位技术交流文章

      距离写的代码的时间比较久了,在这里只是简单的总结介绍一下。
      简单实现了基于Netty的RPC框架并将其注册到Nacos,介绍内容包含序列化,自定义协议,负载均衡算法,Nacos相关服务。
      文末有源码链接。
      著名的分布式服务框架Dubbo使用Dubbo协议进行节点间通信,而Dubbo协议默认使用Netty作为基础通信组件。还有Zookeeper,RocketMQ等底层rpc通讯也使用的是Netty。因此学习Netty对掌握这些框架原理还是比不可少的。
      序列化:
      为实现传输数据和通信,序列化是比不可少的,选择合适的序列化算法是非常重要的,通常要选择性能高,生成字节数少的算法。这里我准备了以下实现:JDK自带的,Json ,还有一个貌似当初因为时间关系没实现的Protobuf,以后有时间补上。

      自定义的协议:

      负载均衡算法:实现了两个分别是:随机和轮换

      解决粘包/拆包的方法:
      主要思想是添加一个长度字段,用于记录偏移量。

      关于在Nacos获取服务的部分:
      自动扫描注册

      源码: https://gitee.com/alice-175/netty-rpc

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/17153.html

          热门文章

          文章分类