感谢刘老师对rpc框架的视频讲解:SOFAChannel#31 RPC框架的设计和实现_哔哩哔哩_bilibili
每个扩展点就是一个接口,可以通过实现接口来时拓展。
以registry举例,可以使用@Extensible注解标记接口,然后@Extension标记方法的实现。
实际使用如下
读取客户端配置,proxy->代理请求->cluster->(routerchain->loadbalance->filterchain【鉴权呀,限流都在这里面,以consumerProvider作为结尾,调用consumer真正的invoke】)->remoter->序列化
读取服务端的配置,接收请求->remoting【bolt协议反序列化】->filterchain【以providerInvoker结束,调用真正的反射方法】->service实现