自动装载模型

概念

自动装载(Autowire)模型 封装了一类对象的装载方式,是本框架对装载过程抽象出的概念和接口。

用户需要定义的结构千变万化,如果每个结构描述符都要提供完整的装载过程信息,将是一件很麻烦的事情。我们将一类相似的结构抽象出一个 自动装载模型,选择注册在该模型的所有结构都需要遵循该模型的加载策略,这大大降低了用户需要提供的 结构描述符 内的定制化信息量,从而提高开发效率。

框架内置了两个基础自动装载模型:单例模型(singleton)多例模型(normal)

当前版本中,框架内置了三个扩展的自动装载模型:配置(config),gRPC 客户端(grpc),RPC(rpc)。其中配置模型是多例模型的扩展,gRPC 客户端是单例模型的扩展,RPC 模型提供了(rpc-client 和 rpc-server)两侧的自动装载模型。关于这三个自动装载模型的应用,可以参考example/autowire example/third_party/grpc 中给出的例子。

基于这些自动装载模型,框架内置了基于“扩展自动装载模型”的多个结构。例如,用户可以用几行代码将 “gRPC 客户端存根”注册在 “grpc 装载模型” 之上【示例】,再例如可以方便地从配置文件中的 指定位置读入 数据。


February 1, 2023: Update env.md (9848a53)