面试官:Dubbo一次RPC调用会经过哪些环节?-服务提供者处理请求

时间:2024-07-10 13:13:55

当服务提供者监听到有请求时,会获取到请求的字节序列

然后根据通信协议,序列化协议反序列化出传输的数据

从而获取到消费者需要调用的、接口、方法以及入参等数据

之后就可以找到调用接口对应的实现,通过反射进行调用,获取结果

然后再将结果序列化成字节数组,返回给消费者

这样服务提供者就处理完成了一次请求

不过这里面有一个小细节,那就是在调用接口的实现之前,也会经过Filter过滤

所以Filter过滤其实在提供者和消费者两者都有

但是需要注意的是,两边的Filter不一定相同,具体取决于这个Filter是作用在消费者端还是提供者端,可通过如下方式配置