通用RPC代码生成器

💡 原文中文,约18000字,阅读约需43分钟。
📝

内容提要

该项目组开发了一款通用RPC代码生成器,支持多种RPC接入层和自定义插件,提升开发效率。现提供Jinja2模板引擎接口,支持protobuf特性,用户可添加Proto路径和文件,注册服务及自定义配置,执行生成。代码生成器分为Mako和Jinja2版本,具备灵活性和扩展性,支持多层级模板渲染。

🎯

关键要点

  • 项目组开发了一款通用RPC代码生成器,支持多种RPC接入层和自定义插件,提升开发效率。

  • 代码生成器提供Jinja2模板引擎接口,支持protobuf特性,用户可添加Proto路径和文件,注册服务及自定义配置。

  • 代码生成器分为Mako和Jinja2版本,具备灵活性和扩展性,支持多层级模板渲染。

  • 使用上手文档中提供了添加Proto查找路径和Proto文件的示例。

  • 可选功能包括注册服务器间通信服务、CS通信服务和自定义配置。

  • 代码生成器的设计文档中提到,RPC流程采用统一配置文件,加载多个pb文件以降低CPU开销。

  • 代码生成的层级分为全局模板和层级模板,分别对应不同的结构。

  • 模板内自动注入的变量和接口提供了丰富的上下文信息供模板渲染使用。

  • 技术白皮书中详细描述了代码生成器的设计思路和实现细节。

  • 工具和代码开源在GitHub上,欢迎交流和合作。

延伸问答

通用RPC代码生成器的主要功能是什么?

通用RPC代码生成器支持多种RPC接入层和自定义插件,提升开发效率。

如何使用Jinja2模板引擎接口?

用户可以通过添加Proto路径和文件,注册服务及自定义配置来使用Jinja2模板引擎接口。

代码生成器支持哪些模板引擎?

代码生成器分为Mako和Jinja2版本,支持这两种模板引擎。

如何注册自定义配置?

可以使用generate_for_pb_add_custom_configure()函数来注册自定义配置。

代码生成器的设计文档在哪里可以找到?

代码生成器的设计文档在项目的技术白皮书中详细描述。

通用RPC代码生成器的开源地址是什么?

工具和代码开源在GitHub上,链接为 https://github.com/atframework/atsf4g-co。

➡️

继续阅读