如何搭建自己的rpc,自己实现rpc

  如何搭建自己的rpc,自己实现rpc

  现在有很多完美的开源rpc架构。想要了解程序如何高效稳定的运行,就要了解建立rpc的过程。自建过程大致可以分为两个部分,沟通部分和协调部分。

  通信部分包括服务器和客户端。服务器监听约定的端口并等待连接。客户端与服务器建立链接。为了有效地传输信息,数据需要在传输前序列化,在接收后反序列化。

  有了以上两个需求,总结一下服务器端和客户端的一些功能。

  服务器的功能可以包括:监听端口、响应连接请求、接收数据包、解析数据包、调用响应方法、组装请求处理结果数据包、发送结果数据包;客户端功能可以包括:建立连接,组装数据,发送数据包,接收处理结果数据包,分析数据包返回结果。

  至此,一个简单的rpc函数就完成了。

  作为一款生产级产品,只有核心的通讯功能是不够的。还要协调管理职能,使其稳定高效运行。

  需要连接池来加速链路建立,部署在集群中的消费者需要负载均衡,集群中的节点需要路由管理,需要时刻维护服务状态,需要排除错误节点,需要优雅关机,避免重启导致的消息丢失,需要过载保护,丢弃超时请求等。

  综上,我们来总结一下消费者和生产者的功能需求。

  消费者可以拥有:连接管理、负载均衡、请求路由、超时处理、健康检查;生产者可以有:线程池,超时丢弃,正常关机,过载保护。

  以上是自建rpc需要的总结功能。如有遗漏,请补充。

  即自建RPC需要哪些功能?更多详情请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: