author: Yang Yang date: 2022-06-26
dubbo-rust支持多种协议:Triple、gRPC、jsonRPC等
Protocol的核心设计是基于dubbo的URL模型,对外暴露通用的服务端和客户端抽象接口。
在Dubbo的整体生态中,服务端接口使用Exporter
来描述;客户端接口使用Invoker
来描述。
Protocol模块的核心功能:
Protocol API支持管理多个底层协议的server以及在一个server上暴露多个服务
Invoker: 客户端通用能力的封装。获取需要一个private withInvoker 接口
Invoker应该是基于Connection(Service)实现的Service。并且进行扩展新的接口。 protocol.rs模块:根据Url返回初始化好的Invoker实例。
Invoker提供的通用的接口,使得dubbo在不同的协议下遵循相同的接口抽象。
在Invoker中,需要做的功能包括