sofa问题

服务引用过程

1.DubboConsumerBootstrap为什么不是ConsumerBootstrap 的扩展点?

2.rest是什么?

3.bolt 和 rest 并没有什么区别?为嘛要搞两个?不冗余嘛?

4.Cluster 是抽象类,也是扩展点,实现了 Invoker, ProviderInfoListener, Initializable, Destroyable 等接口。而他目前的具体扩

5.扩展点有 2 个: FailFastCluster(快速失败), FailoverCluster(故障转移和重试)从哪里可看出来?

6.Cluster 中没有init,因为在AbstractCluster里。

7.sendMsg同步调用阻塞等待数据。具体代码?

8.ConsumerBootstrap的扩展点为什么没有DefaultConsumerBootstrap?

扩展

1.path 和 file 属性拼接。这里其实可以使用 StringBuilder。

2.不理解:SPI 设计的好处,如用策略模式实现的话,ClassLoader 必定相同,类似 SPI 的设计,上层应用和下层应用的 ClassLoader 隔离开来。

3.通过加载指定路径 + 接口名(或 Extensible 指定 file),得到文件名,读取文件中的文本。按行读取,可能读取多次,指的是哪里?

4.SPI 文件是指?

(6)融入spring

1.SofaBootNamespaceHandler 如何找到ServiceDefinitionParser 和 ReferenceDefinitionParser这两个实现?

2.注册到 Spring 的 parsers map 中。key 是 element 名字,value 是解析器。在哪里看到?

3.实际上,在AbstractSingleBeanDefinitionParser抽象类中,会有一个返回 Bean 类型的方法,对应着一个 tag,而他们的父类就是AbstractContractFactoryBean。这句没找到对应的代码

4.ReferenceComponent类的 createProxy 方法如何和return的proxy联系起来

5.RpcBindingAdapter这个类木有找到啊

6.当收到了客户端传来的信息,就直接调用实现类的指定方法就好了,没有客户端这么复杂(没有服务端复杂?)

(7)自定义线程池

1.UserThreadPoolManager 初始化参数在哪里能看到?

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容