RPC框架浅层理解

RPC(远程过程调用)

基础过程:客户端发送函数调用请求以及相关参数至远程服务端,服务端计算完成结果返回给客户端的过程即RPC(远程过程调用)

详细框架思路:

RPC流程图:

RPC框架流程图

过程描述:

1、当客户端产生一个需要调用远程服务器函数的请求时,利用诸如XML等java序列化协议将需要调用的函数名和相关参数序列化

2、利用相关的网络协议传输至API网关,API网关通过断言、过滤等服务方法对调用请求进行处理,如果不符合断言,则返回无效请求;如果满足断言和过滤条件,则向服务注册中心传递请求

3、服务注册中心通过相应的函数映射协议,获取相关的服务端地址,并通过路由返回

4、API网关通过负载均衡方法将函数请求分配至相应的服务器端,服务器端进行函数请求处理

5、API网关检查服务端是否正常调用返回,如果正常则进一步向回传递至Java反序列模块,如果请求异常,并且满足约定的一定时间超过n次异常的要求,则发生服务熔断,在服务熔断过程中,返回的是服务降级处理后的结果。
一定时间后服务器尝试熔断恢复,如果异常次数恢复到要求一下,则重新进行请求处理

6、返回的结果通过java反序列方法返回至客户端

RPC过程结束

技术选型:

java序列化/反序列化协议:XML、JSON、Thrift、Protobuf

服务注册:Eureka/Zookeeper

服务网关:Springcloud Gateway

服务熔断与降级:Hystrix

服务开发:Springboot

服务配置:Config

服务总线:bus

参考文章:

https://www.zhihu.com/question/25536695

https://www.cnblogs.com/fanBlog/p/10936190.html

尚硅谷2020Springcloud开发教学视频

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

芋饭糖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值